如何在IF语句中使用Google表格内的RegEx来查找特定的邮政编码(并非所有符合格式的邮政编码)?

时间:2018-01-30 03:21:24

标签: regex google-sheets

我在Google表格中有一列地址格式为:

  

" 1234 Western Ave,Cincinnati 45226"

     

" 5678 Eastern Ave,Columbus 45126"

我希望在第二个Google工作表列中使用正则表达式来识别仅以452开头的邮政编码。

我尝试在IF声明中搜索正则表达式:

=if( search( "regex", A1), "success message", "fail message")

我在if语句中尝试了正则表达式匹配。

=if( REGEXMATCH("A1","regex"), "success message", "fail message")

我已经尝试了许多正则表达式,包括以下内容,它们都在regex101和各种在线测试人员中验证 - 从来没有在我需要的Google表格内部。我可以使用一些社区援助。

RegEx可在线使用,但不适用于Google表格:

1

452(\d{2})

2

\b452\b(\d{2})

等等。

如何仅查找以特定初始三位数开头的美国邮政编码?

2 个答案:

答案 0 :(得分:1)

Regexextract功能可能有效 -

=REGEXEXTRACT(A1, "452\d{2}")

答案 1 :(得分:1)

=if( REGEXMATCH(A1,"452(\d{2})"), "success message", "fail message")

注意:

  • A1未引用
  • 我建议使用正则表达式"452\d{2}$"。它使用$ char来检查字符串的结尾。

修改

如果您有号码,请将其转换为如下文字:TO_TEXT(A2)。公式应为:

=if( REGEXMATCH(TO_TEXT(A2),"452(\d{2})"), "success message", "fail message")