我正在尝试寻找解决方案,但是没有找到。 当我有一个定义长度的字符串(假设为10)并且其中一个字符必须为特定字母(假设为'd')时,正则表达式将是什么。
我的第一个想法是这样的:
^([0-9d]{10})$
但是它允许在字符串中使用多个'd',而我只想一个。
答案 0 :(得分:4)
您可以使用
^(?=.{10}$)[0-9]*d[0-9]*$
请参见regex demo
详细信息
^
-字符串的开头(?=.{10}$)
-任意10个字符(换行符除外),其后是字符串的结尾(如果需要,您可以精确调整此部分,(?=[0-9d]{10}$)
)[0-9]*
-0位数以上d
-一个d
[0-9]*
-0位数以上$
-字符串的结尾。