gpt4 book ai didi

不以几个给定单词开头的字符串的正则表达式模式

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

例如 :

String s= "Hello every one !! ";

现在我想检查字符串是否不以
Hello 
Hi
Hey

然后返回真?

最佳答案

您可以使用 Negative Lookahead在这样的正则表达式中:

这是针对 JavaScript 的

/^(?!Hello|Hi|Hey).+/gm

将匹配下面的 4 和 8 行
  • 大家好 !!
  • 嗨我的 key 茶店
  • 嘿我的 key 茶店
  • 也许是我的关键茶馆
  • 大家好 !!
  • 嗨我的 key 茶店
  • 嘿我的 key 茶店
  • 也许我的asdf key 茶店

  • ^ - 起跑线

    (?!) - 从表达式中的当前位置开始,确保给定的模式不会匹配。不消耗字符。
    在你的情况下,“你好”或“嗨”或“嘿”表达 您好|您好|您好这意味着: 逐字匹配字符 Hello(区分大小写)字面上匹配字符 Hi(区分大小写)逐字匹配字符 Hey(区分大小写)

    .+ - 匹配一次到无限次之间的任何字符(换行符除外),尽可能多次,例如所有的

    修饰符:多行。导致 ^ 和 $ 匹配每行的开头/结尾(不仅是字符串的开头/结尾)( 在匹配字符串的情况下不需要 )

    修饰符:全局。所有匹配(在第一次匹配时不返回)( 在匹配字符串的情况下也不需要 )

    附言您可以使用更短的版本
    /^(?!H(ello|i|ey)).+/gm

    P.P.S.这些示例也适用于 Ruby、Python 和 PHP

    关于不以几个给定单词开头的字符串的正则表达式模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32637151/

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