【发布时间】:2015-08-29 18:32:27
【问题描述】:
如何将字符串拆分为单词,但保留某些短语/术语?现在,我有String[] strarr = str.split("\\b");,但我想修改正则表达式参数来完成上面提到的。 解决方案不必包含正则表达式
例如,如果 str 等于 "The city of San Francisco is truly beautiful!" 并且术语是 "San Francisco",如何拆分 str 以使生成的 String[] 数组看起来像这样:["The", "city", "of", "San Francisco", "is", "truly", "beautiful!"]?
在看到@Radiodef 的评论后,我决定我本身并不需要正则表达式。如果有人可以帮助我解决这个问题,仍然非常感谢帮助!
【问题讨论】:
-
你不能用正则表达式准确地做到这一点...正则表达式匹配字符模式,而不是地名。这就是图书馆的用途。
-
@Radiodef 我同意正则表达式不是这样做的正确方法,但我发布了正则表达式答案:)
-
Regex 在 Java 中存在许多性能问题,如 eyalsch.wordpress.com/2009/05/21/regex 所述。您甚至可以在我的答案中找到 3 个单词的短语或 n 个单词的短语。只是说;)