Javascript RegEx to XML Schema RegEx
Javascript RegEx to XML Schema RegEx
我有这个Javascript模式
^('b[A-Z]'w*('s|'.)*)+$
我试着在我的XML架构上使用它
<xs:pattern value="^('b[A-Z][a-z]*('s|'.)*)+$">
但当我验证时,我收到一个错误,说InvalidRegex:Pattern值"^(''b[A-Z][A-Z](''s|.))+$"不是有效的正则表达式。报告的错误为:"当前选项设置中不支持此表达式。"
有没有一种方法可以让我的Javascript模式处理我的XMLSchema模式?
并非总是可以将JS正则表达式转换为XSD正则表达式,如Michael Kay回答中所述,XSD正则表达式中不支持单词边界、lookahead等。
根据您的另一个问题,您需要一个正则表达式来测试所有单词是否以大写字符开头,您可以编写另一个对XSD有效的正则表达式,比如这个正则表达式,它测试一个(或多个)空格或点后的下一个字符不应该是小写字母。
([^'s'.]*(['s'.]+[^a-z])?)*['s'.]*
首先,XSD正则表达式隐式锚定在字符串的末尾,因此您可以(也必须)省略"^"answers"$"。
更困难的问题是''b。在方括号外,Javascript中的''b匹配"单词边界",即ASCII字母和数字序列与非(ASCII字母和位数)序列之间的边界。
仔细看,除了确保字符串中至少有一个字符外,我看不出''b对正则表达式的实际贡献。据我所见,您的正则表达式可以简化为
[A-Za-z's'.]+
相关文章:
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- Regex代码只允许一个空格
- Regex匹配除“”之外的所有字符;.js”;
- RegExp:匹配Javascript中除regex值之外的所有内容
- Javascript RegEx validator
- 使用regex的jquery keydown绑定不会验证撇号和句点
- 制作一个regex来验证只有一个数字的字符串
- RegEx JavaScript:数字后的符号提取
- PHP和Javascript之间的Regex差异
- 链接和youtube的Javascript和regex
- 包含圆括号的JavaScript Regex模式
- 相当复杂的Regex
- 如何在ng regex中包含qutoes+双引号
- 在javascript中,I'我很难弄清楚如何让regex只替换捕获而不替换匹配
- Regex提取URL返回数组的一部分;未定义”;
- 将po-box javascript正则表达式转换为c#regex
- Datatables查询url字符串:需要regex来修复url解析
- 要替换的Javascript Regex无法按预期工作
- 如果匹配项在特定的html标记中,则跳过regex匹配
- Javascript RegEx to XML Schema RegEx