用空格

时间:2016-05-15 00:17:23

标签: java regex

我正在尝试替换此字符串

String sampl =  "Mab by Gap David . Leave my Food"

使用此代码:

String authorf = sampl.replace(".","").replaceAll("Leave.","");

所以最后我只有Mab by Gap David

但目前我正在Mab by Gap David my Food

请问我该如何才能获得Mab by Gap David

2 个答案:

答案 0 :(得分:3)

如果您只想要第一句话,那意味着删除句子终止符之后的任何内容。

从您的示例中,您似乎也希望删除句子终结符本身。在终结符之前删除任何空格似乎也是合乎逻辑的。

句子终止符可以定义为句点(.),问号(?)或感叹号(!)。你当然可以自己决定你想要的句子终结者。

因此。找到一个句子终结者:[.?!]
同时选择之前的任何空格:\s*[.?!]
同时选择以下内容:\s*[.?!].*

所以你的代码是:

String authorf = sampl.replaceAll("\\s*[.?!].*","");

请参阅regex101.com for example

答案 1 :(得分:1)

sampl.replace(" . Leave my Food", "")