当前位置: 首页 > 面试题库 >

使正则表达式中的字符可选

卫嘉言
2023-03-14
问题内容

我正在尝试验证一个没有多余字符的(美国)电话号码。因此格式为1-555-555-5555,没有破折号,空格等,并且1是可选的。但是,我的正则表达式仅会排除前导数字为1的数字,并说没有该数字的数字将无效。这是我在使用的地方,我哪里出错了?

"^(1)\\d{10}$"

问题答案:

用:

"^1?\\d{10}$"

?表示“可选”。



 类似资料:
  • 我有一个包含数千行的文本文件。这里有一个例子 我试图提取'nt60'、'nt50'末尾的字符串。 问题是会包含行尾字符() 我想使用正则表达式搜索来匹配从 (') 开始的字符串,但我不知道我应该用什么来匹配 。 有人能帮忙吗?

  • 主要内容:实例下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或

  • 我想为C中的一些字符串创建一个正则表达式。 这就是我目前的情况: C中的字符串由双引号(")分隔,因此正则表达式必须由 \" \". 字符串可能不包含换行符,因此我需要执行[^\n](我想)。 字符串还可能包含双引号或反斜杠字符,如果且仅当它们被转义时。因此[\\\”](我想也是这样)。 除此之外,什么都可以。 任何帮助是非常感谢我有点迷失了如何开始写这个正则表达式。

  • 说到正则表达式,我没那么令人印象深刻。。。 我试图匹配一个单词中除第二个字符外的所有字符。 我想匹配 示例字符串: 我提出了以下两个正则表达式。 除第一个字符外,此字符与“uml”匹配( -- 这与第一个字符匹配,除了最后3个(uml)

  • 本文向大家介绍Java中的正则表达式“ ^”(脱字符)元字符,包括了Java中的正则表达式“ ^”(脱字符)元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“ ^”与行的开头匹配。如果在正则表达式中使用此命令,则它将与输入字符串中其后的句子匹配。 例子1 输出结果 例子2 以下Java程序从用户接受5个字符串,并打印以数字开头的字符串。 输出结果

  • 我有一根下面这样的弦 现在我希望我的程序验证我的输入是否与字符串“phone”的模式相同 我做了以下工作 没奏效。我也尝试了其他的组合。什么都不起作用。 问题:1。我怎样才能做到这一点,而不使用‘模式’像上面?2.如何用图案做到这一点。我尝试了如下模式 Pattern Pattern=Pattern.compile(“(\d+)”);Matcher match=pattern.Matcher(电话