gpt4 book ai didi

javascript - 用星号或最后两个词替换最后一个词

转载 作者:行者123 更新时间:2023-12-02 07:17:27 25 4
gpt4 key购买 nike

我需要隐藏人的姓氏。对于姓名中包含三个单词的人,只需隐藏最后一个单词,ej:

Laura Torres Bermudez

应该是

Laura Torres ********

为了

Maria Fernanda Gonzales Lopez

应该是

Maria Fernanda ******** *****

我认为它们是两个正则表达式,因为根据字数,将应用正则表达式。

我知道 \w+ 用一个星号替换所有单词,使用 (?!\s). 我可以替换除空格以外的字符。我希望你可以帮助我。谢谢。

这是我的例子: https://regex101.com/r/yW4aZ3/942

最佳答案

试试这个:

(?<=\w+\s+\w+\s+.*)[^\s]

解释:

  • ?<=是负向后视——只匹配指定模式之前的匹配项
  • [^\s]/匹配除空格以外的所有内容(您使用的 - (?!\s). - 实际上是对前瞻的奇怪使用 - “查找下一个字符,如果它不是空白;然后匹配任何字符”)
  • 总结:替换前面至少有两个字母序列 (\w) 和空格 (\s) 的任何非空白字符。

请注意,对于名字中只有两个单词的人(这在许多国家/地区很常见),它不会隐藏任何内容。

此外,正则表达式必须稍作修改,以便该测试工具每行匹配一个名称 - 参见 https://regex101.com/r/yW4aZ3/943 (添加了 ^ 以匹配每行的开头,并设置了“多行”标志)。

关于javascript - 用星号或最后两个词替换最后一个词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58439481/

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