我有一个考虑验证的任务,我想修剪一个字符串,如果它包含8个连续的字母形式的数字,例如:
“三四有五二三四有一两”或“三四有五缕四”“
我想知道这个或其他建议是否可能是正则表达式。
可以是Javascript或Java
输入字符串:“示例字符串三四有五五二三有四有二二余字符串”
或
输入字符串:“示例字符串threefourfivefivetwothreefouronetwo remainingimg string”
我期望的字符串:“示例字符串remainingimg字符串”
谢谢,Jibby
答案 0 :(得分:1)
这适用于Javascript:
str.replace(
/(?:(?:zero|one|two|three|four|five|six|seven|eight|nine)\s*){8,}/g,
""
);
答案 1 :(得分:-1)
如果数字在您的示例中拼写出来,并且您需要在JavaScript中使用它,请尝试以下操作:
var eightDigitsRegex = /(?:(?:zero|one|two|three|...|nine)\s*){8,}/;
if (string.match(eightDigitsRegex)) {
// It matches.
}
确保在eightDigitsRegex
中间添加其余数字。
(?:)
是一个非捕获组zero|...|nine
- 数字替代品{8}
- 重复计数(对应任何数字的非捕获组将遇到8次编辑:此处仅匹配正则表达式。请详细说明“修剪”是什么。删除匹配的子字符串?围绕它的任何空白?..