Jump to content

How to Trim a string right to left until a specific character?


Recommended Posts

I have this example string:

 

2020-06-08 09:23:33 : abcdefghifjklm

How to trim just the right part? Or how to trim this text right to left?

I want to trim this string right to left until ' : '.

In ohter words: I need the 'abcdefghifklm' text.

I have tried StringTrimRight, but that requires 

The number of characters to trim.

Unfortunately StringSplit trims the left part of the strings.

 

 

Link to comment
Share on other sites

  • Developers

Something like this?:

$data = '2020-06-08 09:23:33 : abcdefghifjklm'
$RightPart = StringRegExpReplace($data,".*:(.*?)","$1")
ConsoleWrite(' $RightPart = ' & $RightPart & @CRLF)

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Non regex version:

#include <StringConstants.au3>

$data = '2020-06-08 09:23:33 : abcdefghifjklm'
ConsoleWrite(StringStripWS(StringMid($data, 1 + StringInStr($data, ":", 0, -1)), BitOR($STR_STRIPLEADING, $STR_STRIPTRAILING))  & @CRLF)

 

Please don't send me any personal message and ask for support! I will not reply!

Selection of finest graphical examples at Codepen.io

The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯  ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ

Link to comment
Share on other sites

  • 1 year later...

Hi,

I know this is an old thread, but I've got a very similar String to split and could need a helping hand.

So my String looks something like that:

NameOfDocument: 1/8

and i only need the part with the 1. If i use

$data = "NameOfDocument: 1/8"
$s = StringSplit($data, ": ")
ConsoleWrite(" Right part = '" & $s[$s[0]] & "'" & @CRLF)

the result will be: 1/8. What can i do to get only the 1? Split it again in another step? Or is there a way to do it in one step?

 

Sean

Link to comment
Share on other sites

  • Moderators

SeanDoe,

In this case I would use _StringBetween:

#include <String.au3>
#include <Array.au3>

$sString = "NameOfDocument: 1/8"

$aExtract = _StringBetween($sString, ": ", "/")

_ArrayDisplay($aExtract, "", Default, 8)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...