【问题标题】:Regular expression to support strings contacting special characters支持字符串联系特殊字符的正则表达式
【发布时间】:2014-09-07 10:34:12
【问题描述】:

我写了一个正则表达式来接受字符串
Name
Name Surname
并且不接受一系列空格和空输入。

这是我的正则表达式:

regexp = "[A-Za-z0-9][A-Za-z0-9\s]*[A-Za-z0-9]|[A-Za-z0-9]"

如何更新它,创建一个接受字符串的正则表达式,例如:
Name somestring.(例如“Name Jr.”

还有这样的字符串:
aaa-bbb(例如 "Katty-Perry"

还有这样的字符串:
aaa'bbb(例如“Drai'Lyn”

还有像
aaa bbb

这样的字符串

以及像
aaa

这样的字符串 同时。

【问题讨论】:

    标签: regex


    【解决方案1】:

    我会尝试:

    [a-z0-9]+([\s'-][a-z0-9]+)*.?
    

    demo

    请注意,x+ 表示“一个或多个 x”,但您编码为 xx*

    【讨论】:

      【解决方案2】:

      这会有所帮助 [\w\'-.]*

      \w 包括 (a-bA-B0-9) 和 * 匹配 0 个或多个字符。

      包括字符,例如 ' , - 等等,进一步匹配..

      【讨论】:

        【解决方案3】:

        我建议你使用正则表达式

        [\w \.-_']*
        

        我认为最好的方法是自己指定要接受的特定字符(. 或 ' 或 ...)

        【讨论】:

        • 谢谢。 :) 在这种情况下,空格序列被接受为有效输入
        【解决方案4】:
        Try this
        
        \b(?:[A-Za-z0-9]+(?:[-' _][a-zA-Z0-9]+)?\.?)\b
        

        【讨论】:

          【解决方案5】:

          我已经解决了这个问题。 对我有用的答案是 [A-Za-z0-9][A-Za-z0-9\s-\']*[A-Za-z0-9.]|[A-Za-z0-9]

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-08-14
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-11-16
            • 1970-01-01
            • 2017-08-15
            相关资源
            最近更新 更多