1
A
回答
1
以下正則表達式將每個值提取到指定組中。
(?<Word>(.*))(\s*)\[(?<Column>(.*))\]\s*%(?<Anything>(.*))%
你的樣品字符串使用這應該給你以下捕獲:
Word = "WORD"
Column = "COLUMN"
Anything = "Anything goes"
要運行這個正則表達式並獲得值,你可以這樣做以下(不採取這種作爲最佳實踐,這只是爲了說明一些基本概念)。
Regex regex = new Regex(@"(?<Word>(.*))(\s*)\[(?<Column>(.*))\]\s*%(?<Anything>(.*))%");
Match match = regex.Match("WORD [COLUMN] %Anything goes%");
Console.WriteLine(match.Groups["Word"].Value);
Console.WriteLine(match.Groups["Column"].Value);
Console.WriteLine(match.Groups["Anything"].Value);
這應該輸出組捕獲到控制檯。有關C#中正則表達式的更多信息,請查看Regex
的MSDN文檔(這也將鏈接到您可能遇到的其他類型)。我還建議Expresso作爲幫助您構建和分析正則表達式的工具。 Expresso還支持代碼發射和各種其他有用的功能。
+0
你是最棒的! – 2011-01-26 04:03:05
3
這樣的事情?
第一抓握一切到第一空間中,然後抓住之間[和],最後抓住一切之間一切%S
([^ ]*) \[([^\]])\] %(.*)%
+0
這不會起作用,因爲COLUMN只需要一個字符(我認爲你需要`[^ \]] +`,最後一部分應該是`%[^%] *%`。他允許在「什麼都可以」內嵌入嵌入的`%`字符。 – 2011-01-26 03:57:01
1
([A-Z]+) \[([A-Z]+)\] %(.*)%
如果字和模式是全部大寫。
相關問題
- 1. Javascript - 你會如何將這種模式進行正則表達。似乎無法做到這一點
- 2. 這是正則表達式正確:你將如何改善它
- 3. 如何匹配這種模式? (Java /正則表達式)
- 4. 正則表達式這種格式
- 5. 正則表達式:兩種模式
- 6. 這種模式的正確表達式
- 7. 正則表達式RE:所有而不是這種模式
- 8. 正則表達式這種特殊的模式
- 9. 正則表達式找到這種模式
- 10. 這種模式的正則表達式是什麼?
- 11. 正則表達式匹配這種重複模式?
- 12. 正則表達式會檢測這種模式麼?
- 13. PHP正則表達式允許這種模式
- 14. PHP /正則表達式:允許在這種模式
- 15. 正則表達式匹配這種模式
- 16. 你可以改進這個C#正則表達式代碼嗎?
- 17. 這個模式的正則表達式
- 18. 你如何用正則表達式來處理這種條件情況?
- 19. 如何通過正則表達式從這種格式爆炸?
- 20. 我如何糾正這個正則表達式模式爲PHP
- 21. 你如何逃避這個正則表達式?
- 22. 你如何用正則表達式javascript來做到這一點?
- 23. 使用正則表達式改進這種遞歸搜索
- 24. 如何處理具有多種模式的正則表達式?
- 25. 如何將這些行與正則表達式分開
- 26. 你能將這個Ruby正則表達式轉換爲PHP嗎?
- 27. 正則表達式表達與幾種不同的模式
- 28. 如何將正則表達式的轉換或進行XOR
- 29. 如何寫正則表達式這種字符串的?
- 30. 如何爲這種情況編寫正則表達式?
WORD和PATTERN是否總是大寫? – 2011-01-26 03:30:20