Sponsored Content
Top Forums UNIX for Beginners Questions & Answers How to extract string between two specified characters and end of line? Post 303044811 by priyagchaudhary on Wednesday 4th of March 2020 09:34:44 AM
Old 03-04-2020
extract string between two specified characters and end of line

You can leave the $start or $end arguments empty and it will use the start or end of the string.

Code:
echo get_string_between("Hello my name is bob", "my", ""); //output: " name is bob"

private function get_string_between($string, $start, $end){ // Get
    if($start != ''){ //If $start is empty, use start of the string
        $string = ' ' . $string;
        $ini = strpos($string, $start);
        if ($ini == 0) return '';
        $ini += strlen($start);
    }
    else{
        $ini = 0;
    }

    if ($end == '') { //If $end is blank, use end of string
        return substr($string, $ini);
    }
    else{
        $len = strpos($string, $end, $ini) - $ini; //Work out length of string
        return substr($string, $ini, $len);
    }
}


Last edited by vgersh99; 03-04-2020 at 11:29 AM.. Reason: fix code tags
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Removing characters from end of $string

I am writing a script to search PCL output and append more PCL data to the end accordingly. I need to remove the last 88 bytes from the string. I have searched for a few hours now and am coming up with nothing. I can't use head or tail because the PCL output is all on one line. awk crashes on... (3 Replies)
Discussion started by: craig2k
3 Replies

2. Shell Programming and Scripting

Extract digits at end of string

I have a string like xxxxxx44. What's the best way to extract the digits (one or more) in a ksh script? Thanks (6 Replies)
Discussion started by: offirc
6 Replies

3. AIX

CUT command - cutting characters from end of string

Hello, I need to delete the final few characters from a parameter leaving just the first few. However, the characters which need to remain will not always be a string of the same length. For instance, the parameter will be passed as BN_HSBC_NTRS/hub_mth_ifce.sf. I only need the bit before the... (2 Replies)
Discussion started by: JWilliams
2 Replies

4. Shell Programming and Scripting

Get the 1st 99 characters and add new line feed at the end of the line

I have a file with varying record length in it. I need to reformat this file so that each line will have a length of 100 characters (99 characters + the line feed). AU * A01 EXPENSE 6990370000 CWF SUBC TRAVEL & MISC MY * A02 RESALE 6990788000 Y... (3 Replies)
Discussion started by: udelalv
3 Replies

5. Shell Programming and Scripting

adding characters end of line where line begins with..

Hi all, using VI, can anyone tell me how to add some characters onto the end of a line where the line begins with certain charactars eg a,b,c,......., r,s,t,........, a,b,c,......., all lines in the above example starting with a,b,c, I want to add an x at the end of the line so the... (6 Replies)
Discussion started by: satnamx
6 Replies

6. UNIX for Dummies Questions & Answers

Removing characters from end of string

Hello, I have records like below that I want to remove any five characters from the end of the string before the double quotes unless it is only an asterik. 3919,5020 ,04/17/2012,0000000000006601.43,,0000000000000000.00,, 132, 251219,"*" 1668,0125 ... (2 Replies)
Discussion started by: jyoung
2 Replies

7. UNIX for Dummies Questions & Answers

How to specify beginning-of-line/end-of-line characters inside a regex range

How can I specify special meaning characters like ^ or $ inside a regex range. e.g Suppose I want to search for a string that either starts with '|' character or begins with start-of-line character. I tried the following but it does not work: sed 's/\(\)/<do something here>/g' file1 ... (3 Replies)
Discussion started by: jawsnnn
3 Replies

8. Shell Programming and Scripting

How to extract text from STRING to end of line?

Hi I have a very large data file with several hundred columns and millions of lines. The important data is in the last set of columns with variable numbers of tab delimited fields in front of it on each line. Im currently trying sed to get the data out - I want anything beetween :RES and... (4 Replies)
Discussion started by: Manchesterpaul
4 Replies

9. Red Hat

How to add a new string at the end of line by searching a string on the same line?

Hi, I have a file which is an extract of jil codes of all autosys jobs in our server. Sample jil code: ************************** permission:gx,wx date_conditions:yes days_of_week:all start_times:"05:00" condition: notrunning(appDev#box#ProductLoad)... (1 Reply)
Discussion started by: raghavendra
1 Replies

10. Shell Programming and Scripting

Grep a particular string from column eliminating characters at the end.

Hi, So basically I have this file containing query output in seperated columns. In particular column I have the below strings: news news-prio I am trying to grep the string news without listing news-prio aswell. I tried grep "$MSG_TYPE" , grep -w "$MSG_TYPE" , grep... (4 Replies)
Discussion started by: nms
4 Replies
inifile(n)						   Parsing of Windows INI files 						inifile(n)

__________________________________________________________________________________________________________________________________________________

NAME
inifile - Parsing of Windows INI files SYNOPSIS
package require Tcl 8.2 package require inifile ?0.2.3? ::ini::open file ?access? ::ini::close ini ::ini::commit ini ::ini::revert ini ::ini::filename ini ::ini::sections ini ::ini::keys ini section ::ini::get ini section ::ini::exists ini section ?key? ::ini::value ini section key ?default? ::ini::set ini section key value ::ini::delete ini section ?key? ::ini::comment ini section ?key? ?text? ::ini::commentchar ?char? _________________________________________________________________ DESCRIPTION
This package provides an interface for easy manipulation of Windows INI files. ::ini::open file ?access? Opens an INI file and returns a handle that is used by other commands. access is the same as the first form (non POSIX) of the open command, with the exception that mode a is not supported. The default mode is r+. ::ini::close ini Close the specified handle. If any changes were made and not written by commit they are lost. ::ini::commit ini Writes the file and all changes to disk. The sections are written in arbitrary order. The keys in a section are written in alphabet- ical order. If the ini was opened in read only mode an error will be thrown. ::ini::revert ini Rolls all changes made to the inifile object back to the last committed state. ::ini::filename ini Returns the name of the file the ini object is associated with. ::ini::sections ini Returns a list of all the names of the existing sections in the file handle specified. ::ini::keys ini section Returns a list of all they key names in the section and file specified. ::ini::get ini section Returns a list of key value pairs that exist in the section and file specified. ::ini::exists ini section ?key? Returns a boolean value indicating the existance of the specified section as a whole or the specified key within that section. ::ini::value ini section key ?default? Returns the value of the named key and section. If specified, the default value will be returned if the key does not exist. If the key does not exist and no default is specified an error will be thrown. ::ini::set ini section key value Sets the value of the key in the specified section. If the section does not exist then a new one is created. ::ini::delete ini section ?key? Removes the key or the entire section and all its keys. A section is not automatically deleted when it has no remaining keys. ::ini::comment ini section ?key? ?text? Reads and modifies comments for sections and keys. To write a section comment use an empty string for the key. To remove all com- ments use an empty string for text. text may consist of a list of lines or one single line. Any embedded newlines in text are prop- erly handled. Comments may be written to nonexistant sections or keys and will not return an error. Reading a comment from a nonex- istant section or key will return an empty string. ::ini::commentchar ?char? Reads and sets the comment character. Lines that begin with this character are treated as comments. When comments are written out each line is preceded by this character. The default is ;. BUGS, IDEAS, FEEDBACK This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category inifile of the Tcllib SF Trackers [http://sourceforge.net/tracker/?group_id=12883]. Please also report any ideas for enhancements you may have for either package and/or documentation. CATEGORY
Text processing inifile 0.2.3 inifile(n)
All times are GMT -4. The time now is 09:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy