鍍金池/ 問答/PHP  HTML/ 正則如何匹配出字符串中的特定字符?

正則如何匹配出字符串中的特定字符?

比如一個(gè)字符串:

'/content/dam/sonystyle/products/color/silver/color_icon_grey_30x30.gif'

'/content/dam/sonystyle/products/color/'這里是固定的,后面在變
如果要取出silver這個(gè)字段?正則該怎么寫?要兼容目前瀏覽器
回答
編輯回答
瘋浪

/content/dam/sonystyle/products/color/([^\/]*)[$|/].*$

2017年6月16日 11:08
編輯回答
笨尐豬

個(gè)人感覺沒有必要使用正則

let str = '/content/dam/sonystyle/products/color/silver/color_icon_grey_30x30.gif'
let len = '/content/dam/sonystyle/products/color/'.length
str = str.slice(len) // str = 'silver/color_icon_grey_30x30.gif'
str = str.split('/') // str = ['silver', 'color_icon_grey_30x30.gif']
str = str[0] // str = 'silver'
2017年10月30日 09:30
編輯回答
朽鹿
function getKey() {
    const reg = /\/content\/dam\/sonystyle\/products\/color\/([^\/]+)\/.+/;
    const res = reg.exec('/content/dam/sonystyle/products/color/silver/color_icon_grey_30x30.gif');
    return res && res[1];
}
2018年4月26日 07:14
編輯回答
遲月
var a = "/content/dam/sonystyle/products/color/silver/color_icon_grey_30x30.gif"
var reg = /\/content\/dam\/sonystyle\/products\/color\/([^\/]+)/;
var v = reg.exec(a)[1];
console.log(v);
2017年9月16日 09:59