在正则表达式中匹配非英文字符的最简单方法是什么?我想在输入字符串中单独匹配所有单词,但语言可能不是英语,所以我需要匹配ü,ö,ß和ñ等内容.此外,这是在Javascript/jQuery中,因此任何解决方案都需要应用于此.
刚刚开始探索正则表达式的"奇迹".作为一个从反复试验中学习的人,我真的很挣扎,因为我的试验引发了不成比例的错误...我的实验是在PHP中使用ereg().
无论如何.我分别使用名字和姓氏,但现在使用相同的正则表达式.到目前为止,我有:
^[A-Z][a-zA-Z]+$
Run Code Online (Sandbox Code Playgroud)
任何长度字符串,以大写字母开头,并且只有字母(大写或不大写).但是我分崩离析的是处理几乎可以在任何地方发生的特殊情况.
也许还有一些其他的方式,我不会想到一个名字,但我怀疑如果我能解决这个问题,我可以补充一下.我很确定会出现一个名称中出现多种情况的情况.
所以,我认为最重要的是让我的正则表达式也接受空格,连字符,符号和撇号 - 但不是在名称的开头或结尾处技术上是正确的.
如何验证正则表达式的全名?我只想要字母表(没有数字),只需要正则表达式的空格.这就是我到目前为止所做的.你能帮我修一下这个正则表达式吗?非常感谢你
public static boolean isFullname(String str) {
boolean isValid = false;
String expression = "^[a-zA-Z][ ]*$"; //I know this one is wrong for sure >,<
CharSequence inputStr = str;
Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isValid = true;
}
return isValid;
}
Run Code Online (Sandbox Code Playgroud) 我对正则表达式很陌生,需要满足以下条件的名字的正则表达式:
‘且–不能在一起(例如不允许使用 John'-s)‘和–(例如,不允许使用 John 的)任何人都可以帮忙吗?我试过这个,^([a-z]+['-]?[ ]?|[a-z]+['-]?)*?[a-z]$但它没有按预期工作。
我正在尝试将正则表达式验证添加到联系表 7 的“姓氏”字段,该字段将允许使用带连字符的名称。我已经研究并编写了一个函数来实现这一点,但它似乎不起作用。任何帮助,将不胜感激。
这是我编写并放置在functions.php文件中的函数...
add_filter('wpcf7_validate_text', 'custom_text_validation', 20, 2);
add_filter('wpcf7_validate_text*', 'custom_text_validation', 20, 2);
function custom_text_validation($result, $tag) {
$type = $tag['type'];
$name = $tag['name'];
if($name == 'last-name') {
$value = $_POST[$name];
if(!preg_match('[a-zA-Z\-]', $value)){
$result->invalidate($tag, "Invalid characters");
}
}
return $result;
}
Run Code Online (Sandbox Code Playgroud) 我想编写一个函数来验证使用Javascript形式的全名输入:
一个单词就可以,名字,中间名之间也可以有一个空白字符的字符串,但是我不希望有任何数字。
有什么建议吗?
我有一个EtcRuby库抓取的用户列表:
Thomas_J_Perkins
Jennifer_Scanner
Amanda_K_Loso
Aaron_Cole
Mark_L_Lamb
我需要做的是获取完整的名字,跳过中间名(如果给出),并抓住姓氏的第一个字符.输出应如下所示:
托马斯P.
詹妮弗S.
阿曼达L.
亚伦C.
马克L.
我不知道该怎么做,我已经尝试抓住所有的角色了:/\w+/但这会抓住一切.
我试图使用正则表达式来验证颤振中文本字段表单的全名,但我无法弄清楚它为什么不起作用。
我从这里 找到的表达式/^[a-z ,.'-]+$/i对于我给出的任何条目都失败了。
我在 dart 中为我的颤振应用程序使用的代码是:
final RegExp nameExp = new RegExp(r"/^[a-z ,.'-]+$", caseSensitive: false);
Run Code Online (Sandbox Code Playgroud)
谁能看到我错过了什么?
更新:所以正则表达式允许大多数事情并且不太正确,对我有用的是r"^([a-zA-Z]{2,}\s[a-zA-z]{1,}'?-?[a-zA-Z]{2,}\s?([a-zA-Z]{1,})?)"下面接受的答案
你好,我有一串全名。
string='Christof KochJonathan HarelMoran CerfWolfgang Einhaeuser'
Run Code Online (Sandbox Code Playgroud)
我想按名字和姓氏拆分它以获得这样的输出
['Christof Koch', 'Jonathan Harel', 'Moran Cerf', 'Wolfgang Einhaeuser']
Run Code Online (Sandbox Code Playgroud)
我尝试使用这段代码:
splitted = re.sub('([A-Z][a-z]+)', r' \1', re.sub('([A-Z]+)', r' \1', string))
Run Code Online (Sandbox Code Playgroud)
返回这个结果
['Christof', 'Koch', 'Jonathan', 'Harel', 'Moran', 'Cerf', 'Wolfgang', 'Einhaeuser']
Run Code Online (Sandbox Code Playgroud)
我希望将每个全名作为一个项目。
有什么建议么?谢谢