2015-05-29 43 views
2

我有一個字符串中提取的話,你好〜添〜呼叫我 - 當 - 你 - 是 - 背在〜+ 339280908998正則表達式(gskinner)從一句

有現有的消息在多個領域。 Greeting=HelloName=Timmessage=call-me-when-you-are-back-atPhone=+339280908998

即,的~發生之前基本上第一個字是Greeting,和~第一和第二齣現之間是Name,第三和第四齣現之間~是消息和所述最後一個字之後的~最終發生是手機。

如何提取這些單詞。

在此先感謝。

+0

你不能,因爲只有一個的'〜'occurence? –

+0

實際的字符串看起來像這樣。 你好〜蒂姆〜打電話給我,當你回到〜+ 339280908998 –

+0

什麼編程語言/框架。你會一直有三個痣嗎?還是有所不同? –

回答

1

是的,可以根據評論中的字符串來完成。

您所需要的正則表達式是:^([^~]*?)~([^~]*?)~([^~]*?)~(.*?)$

下面是一個例子的鏈接:https://regex101.com/r/bW2cP7/2

+0

有沒有什麼辦法可以只提取特定的字段集,比如,如果有6個波浪線,我想只提取第3個和第4個波浪線之間的內容? –

+0

是的,它只會提取帶有括號的項目。 –

+0

非常感謝。有用。 –