gpt4 book ai didi

java - 我怎样才能找到replace_all的正则表达式?

转载 作者:行者123 更新时间:2023-12-01 16:55:25 25 4
gpt4 key购买 nike

我已经尝试了很多,但无法找到一种方法在replace_all中组合这两个正则表达式。

"test String".replaceAll("(?i)[^a-zßäöü]", " ").replaceAll(" +", " "));

第一个正则表达式删除每个不属于德语的符号,第二个正则表达式删除每个空格组合 2 个或更多。(我怎么说呢,它应该是 2 个或更多的空格?因为 + 意味着至少 1,对吧?)

谢谢:)

最佳答案

在某些情况下,组合替换并不那么容易,因为第一次替换可能会产生一些应包含在第二次替换中的结果。

就你的情况

  1. 您只需将非 a-zßäöü 替换为空格即可,
  2. 然后将两个或多个空格替换为一个。

换句话说,如果您有像 "ab.,!@#cd ef 这样的数据,它将首先转换为 ab cd ef,然后转换为 ab cd ef.

换句话说,您正在用一个空格替换一组不属于您接受的字符。所以你可能应该用简单的

replaceAll("(?i)[^a-zßäöü]+", " ") // space is also included in [^a-zßäöü] 
// but that should be fine since replacing
// space with space shouldn't break anything
// (especially if it worked in your original solution)

关于java - 我怎样才能找到replace_all的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33588708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com