正则表达式匹配带有上标的空格的任何单词

时间:2014-10-07 16:41:18

标签: xml regex xsd pattern-matching schema

这是上标heyʰ howʱ我正在寻找一个正则表达式,它匹配任何由空格分隔并具有上标的单词。我在架构文件中将其设置为<xs:restriction>。我是regex的新手,但这是我的尝试:

<xs:restriction base='xs:string'>
    <xs:pattern value='(\w)\s+(\w)'/>
</xs:restriction>

1 个答案:

答案 0 :(得分:1)

既然你澄清了你在讨论属性的类型,那么上标的唯一出现方式就是使用Unicode提供的极少数文字上标字符:U + 00B2,U + 00B3,U + 00B9 ,U + 2070,U + 2071,U + 2074 - U + 207F。还有一些其他用于某些目的可能被解释为上标。正如我最初写的那样,你可以通过一个字符类匹配正则表达式中的那些;它看起来像这样:

<xs:restriction base='xs:string'>
  <xs:pattern value='\S+[&#xb2;&#xb3;&#xb9;&#x2070;&#x2071;&#x2074;-&#x207f;]+ +\S+[&#xb2;&#xb3;&#xb9;&#x2070;&#x2071;&#x2074;-&#x207f;]+'/>
</xs:restriction>

非常难看。