這也許是關於對SO正則表達式可選後綴的100 + 1的問題,但我沒有發現任何,可以幫助我:(正則表達式前綴和後綴可選
我需要提取字符串的一部分從常見的模式:。
prefix/s/o/m/e/t/h/i/n/g/suffix
使用正則表達式的前綴是恆定的,並且後綴可能不會出現在所有的,所以prefix/(.+)/suffix
不符合我的要求印刷圖案prefix/(.+)(?:/suffix)?
回報s/o/m/e/t/h/i/n/g/suffix
的一部分。 (?:/suffix)?
必須以某種方式更貪婪。
我想從這些輸入字符串s/o/m/e/t/h/i/n/g
:提前
prefix/s/o/m/e/t/h/i/n/g/suffix
prefix/s/o/m/e/t/h/i/n/g/
prefix/s/o/m/e/t/h/i/n/g
謝謝!
如果這是整個字符串,可以使用'^ prefix(。*?)(?:\ /(?:suffix)?)?$'作爲一般模式,不確定具體實現(並且正確逃避)在Java中。 –
是的,非常感謝!把它作爲答案,請 – olexd
允許在匹配之前或之後包含字符的輸入,例如'... prefix/s/o/m/e/t/h/i/n/g/suffix。 ..'? – Thomas