城市名称的正则表达式

21 浏览
0 Comments

城市名称的正则表达式

我需要一个正则表达式来验证城市文本框,该文本框只接受字母、空格和破折号(-)。

0
0 Comments

问题出现的原因:

在搜索城市名称的正则表达式时,作者发现现有的正则表达式模式不适用于包含破折号或特殊字符的城市名称。

解决方法:

作者提供了一个新的正则表达式模式,用于匹配城市名称。该模式包括以下内容:

^[a-zA-Z\u0080-\u024F\s\/\-\)\(\`\.\"\']+$

该模式可以匹配包含破折号(如"Soddy-Daisy, Tennessee")或特殊字符(如"ñ in La Cañada Flintridge, California")的城市名称。

作者进一步测试后发现,该正则表达式模式还可以接受括号、斜杠和其他特殊字符。

希望这对大家有所帮助!

0
0 Comments

正则表达式用于城市名称的原因是为了验证和匹配城市名称的格式。对于城市名称,通常会涉及到字母、连字符、空格、撇号以及特定的字符,如点和斜杠。因此,需要一个正则表达式来确保输入的城市名称符合要求。

下面是一个用于城市名称的正则表达式示例:

^([a-zA-Z\u0080-\u024F]+(?:. |-| |'))*[a-zA-Z\u0080-\u024F]*$

这个正则表达式可以接受以下城市名称:

Toronto

St. Catharines

San Fransisco

Val-d'Or

Presqu'ile

Niagara on the Lake

Niagara-on-the-Lake

München

toronto

toRonTo

villes du Québec

Provence-Alpes-Côte d'Azur

Île-de-France

Kópavogur

Garðabær

Sauðárkrókur

Þorlákshöfn

而以下城市名称则被拒绝:

A----B

------

*******

&&

()

//

\\

这个正则表达式还可以进一步改进,例如替换末尾的"."为"+",以禁止以连字符结尾的城市名称。此外,如果城市名称中包含数字,正则表达式可能无法正确匹配。

总结起来,正则表达式对于城市名称的验证和匹配非常有用。通过使用适当的正则表达式,可以确保输入的城市名称符合预期的格式要求。然而,在使用正则表达式时,需要注意特殊字符和边界情况,以确保正则表达式的准确性和有效性。

0
0 Comments

正则表达式是一种用于匹配字符串模式的强大工具,可以在文本中找到特定的模式。在这个问题中,我们需要找到适用于城市名称的正则表达式。然而,城市名称的模式非常复杂,因为不同的城市名称可能具有不同的变体和格式。

要解决这个问题,我们可以使用一个相对简单的正则表达式:^[a-zA-Z]+(?:[\s-][a-zA-Z]+)*$。这个表达式匹配一个或多个字母,后面跟着一个块:零个或多个空格或破折号,再跟着更多的字母。这个块可以出现零次或多次。

然而,这个正则表达式并不能匹配像" München"这样的城市名称。为了解决这个问题,我们需要根据具体情况定义允许的字符。例如,如果我们想要允许特殊字符,可以将[a-zA-Z]替换为\p{L}。

此外,这个正则表达式还允许出现像"San----Francisco"或多个空格的情况。如果我们不希望允许这些情况发生,可以将[\s-]*改为[\s-]+。

如果我们想要允许城市名称以空格开头,可以修改正则表达式为^\s*[a-zA-Z]+(?:[\s-][a-zA-Z]+)*$

总之,正则表达式可以用于匹配城市名称的模式。然而,由于城市名称的复杂性和变体,我们需要根据具体情况定义适用的正则表达式。

0