尋找適合以下條件的正則表達式:需要使用正則表達式清理格式不正確的標籤
我需要清理自由流動文本中的某些標籤。例如,在文本中我有兩個重要的標籤:<2004:04:12>
和<name of person>
。不幸的是,一些標籤缺少「<」或「>」分隔符。
例如,一些如下:
1) <2004:04:12 , I need this to be <2004:04:12>
2) 2004:04:12>, I need this to be <2004:04:12>
3) <John Doe , I need this to be <John Doe>
我嘗試使用下面的情況1:
String regex = "<\\d{4}-\\d{2}-\\d{2}\\w*{2}[^>]";
String output = content.replaceAll(regex,"$0>");
這的確發現 「< 2004:04:12」 的所有實例結果是「< 2004:04:12>」。 但是,我需要消除結束標記之前的空間。
不知道這是最好的方法。有什麼建議麼。
感謝
關於情況1,在標籤中應該包含'2004:04:12'日期之後還有什麼?標籤應該是「<2004:04:12 info here>」嗎?基本上,你怎麼知道標籤應該結束? (關於情況3的同樣的問題) – 2010-06-13 23:08:37
可能會出現這樣的情況,日期後跟一個字母字符,例如「<2004:04:12some text」。在這種情況下,結果應該是「<2004:04:12>某些文字」。感謝您的觀察。 – Brian 2010-06-13 23:19:33
你怎麼知道什麼屬於一個名稱,什麼不是? – Tomalak 2010-06-13 23:26:37