正则表达式以验证城市字段

Mar*_*orn 0 regex

我正在创建一个正则表达式来验证城市字段.使用以下代码,我只能使用一个空格验证City字段:

Pattern pattern_ = Pattern.compile("^[a-zA-Z]+(?:[\\s-][a-zA-Z]+)*$");
Run Code Online (Sandbox Code Playgroud)

有关如何改进我的正则表达式以验证具有多个空格的城市字段的任何建议?

好吧,最后我正在使用这个正则表达式:

Pattern pattern_ = Pattern.compile("^[a-zA-Z]+(?:(?:\\s+|-)[a-zA-Z]+)*$");
Run Code Online (Sandbox Code Playgroud)

但是现在我遇到了重音问题如何在城市场地添加重音?

Cas*_*yte 5

使用替换而不是字符类:

Pattern pattern_ = Pattern.compile("^[a-zA-Z]+(?:(?:\\s+|-)[a-zA-Z]+)*$");
Run Code Online (Sandbox Code Playgroud)