我有一个字符串名称s,
String s = "<NOUN>Sam</NOUN> , a student of the University of oxford , won the Ethugalpura International Rating Chess Tournament which concluded on Dec.22 at the Blue Olympiad Hotel";
Run Code Online (Sandbox Code Playgroud)
我想从字符串中删除所有< NOUN >和< / NOUN >标记.我用它来删除标签,
s.replaceAll("[<NOUN>,</NOUN>]","");
Run Code Online (Sandbox Code Playgroud)
是的,它删除了标签.但它也会从字符串中删除字母"U"和"O"字符,这会给我以下输出.
Sam , a student of the niversity of oxford , won the Ethugalpura International Rating Chess Tournament which concluded on Dec.22 at the Blue lympiad Hotel
Run Code Online (Sandbox Code Playgroud)
谁能告诉我如何正确地做到这一点?
Hub*_*bro 13
尝试:
s.replaceAll("<NOUN>|</NOUN>", "");
Run Code Online (Sandbox Code Playgroud)
在RegEx中,语法[...]将匹配括号内的每个字符,无论它们出现的顺序如何.因此,在您的示例中,所有外观"<","N","O"等都将被删除.而是使用pipe(|)来匹配"<NOUN>"和"</ NOUN>".
以下也应该有效(并且可以被认为更干燥和优雅)因为它将匹配带有和不带正斜杠的标签:
s.replaceAll("</?NOUN>", "");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10596 次 |
| 最近记录: |