2016-09-09 83 views
2

我有一個像Data lva_var type Integer value 20這樣的語句。我需要在type之後找出令牌。正則表達式,找到匹配後的下一個單詞

我最近的嘗試是[type](?:\s\S+),但是比賽是e integer

代碼片段會有幫助。

+1

你已經用三種不同的語言/環境標記了這個 - 你在哪裏需要正則表達式? – vwegert

+0

我需要一個普通的正則表達式 –

+0

您誤解了這個問題 - **您將使用哪個語言的正則表達式?**它們各不相同,並且已經用兩種特定/不同的語言標記了它。這是什麼? –

回答

1

試試這個,
type\s(\w+)
這裏第一組包含「type」旁邊的單詞
希望這段代碼能夠幫到你。

+0

它不應該匹配單詞'type',它必須匹配一個單詞後面的單詞。 –

+0

括號將分別在「類型」之後捕獲單詞。看到這個如何得到它:http://stackoverflow.com/questions/432493/how-do-you-access-the-matched-groups-in-a-javascript-regular-expression – adam0101

+0

@AKHILRAJ亞當提到的圓括號會將您的令牌作爲一個獨立的小組捕捉。 –

1

JavaScript不支持lookbehinds,但因爲你標記nsregularexpression和不支持他們,也許試試這個:(?<=\btype\s+)\w+

2

您可以使用回顧後這個(?<=\btype\s)(\w+)會做的伎倆爲您服務。看看this example

+0

答案應該包括相關的代碼。 –

+0

請查看已編輯的答案,代碼已包含在提供的鏈接中(因爲它仍然存在)。 –

+0

謝謝。只是幫助你理解「最佳實踐」。如果鏈接斷裂,該服務永遠消失等,您的代碼將會丟失。此外,在答案中添加代碼可節省將來訪客的時間。謝謝! –

相關問題