简体   繁体   中英

get a specific part of a string

I have the following url. http://domain.com/userfiles/dynamic/images/whatever_dollar_1318105152.png Everything in the url can change except the userfiles part and the last underscore. Basically I want to get the part of the url which is userfiles/dynamic/images/whatever_dollar_ What is a good way to do this. I'm open or both JavaScript or php.

Use parse_url in PHP to split an url in its various parts. Get the path part that is returned. It contains the path without the domain and the query string.

After that use strrpos to find the last occurrance of the _ within the path.

With substr you can copy the first part of the path (up until the found _ ) and you're done.

You could, with JavaScript, try:

var string = "http://domain.com/userfiles/dynamic/images/whatever_dollar_1318105152.png";

var newString = string.substring(string.indexOf('userfiles'),string.lastIndexOf('_'));
alert(newString); // returns: "userfiles/dynamic/images/whatever_dollar" (Without quotes).

JS Fiddle demo .

References:

假设您的字符串存储在$ s中,只需:

echo preg_replace('/.*(userfiles.*_).*/', '$1', $s);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM