這裏是演示字符串:如何使用正則表達式提取兩個字符串之間的值?
beforeValueAfter
假定我知道我想要的值之間「之前」和「之後」 我想extact「值」使用正則表達式....
pervious909078375639355544after
Assum e我知道我想要的值是在「pervious90907」和「55544after」之間 我想用「正則表達式」提取「83756393」....
thx提前。
這裏是演示字符串:如何使用正則表達式提取兩個字符串之間的值?
beforeValueAfter
假定我知道我想要的值之間「之前」和「之後」 我想extact「值」使用正則表達式....
pervious909078375639355544after
Assum e我知道我想要的值是在「pervious90907」和「55544after」之間 我想用「正則表達式」提取「83756393」....
thx提前。
答案取決於兩件事情:
如果它可以是任何東西(在將需要切換.*
到ungreedy因爲「.*
」也匹配「後」:
/before(.*?)After/
如果你知道它是個數字:
/before(\d*)After
如果它可以是任何單詞字符(0-9,AZ,AZ,_):
/before(\w*?)After
正則表達式應該是這樣的:
previous([0-9]*)after
bash-3.2$ echo pervious909078375639355544after | perl -ne 'print "$1\n" if /pervious90907(.*)55544after/' 83756393
你可以做一個字符串替換的 「pervious90907」 和 「55544after」。你會留下你想要的價值。不需要正則表達式 – ghostdog74 2009-08-02 00:01:10