RegEx匹配包含特定字符序列的起始元素

时间:2014-02-21 16:50:47

标签: regex regex-lookarounds

我有这个XML文档片段..

  

<fsm> <fparameters> <fparameter name="fsOAPath"><%#sqlscalar:select dbo.fsOaPath(<%OrderId%>)%></fparameter> </fparameters> <do> <action> <context source="/notification/fsm/parameters/parameter[@name='fsOAPath']" destination="/notification/message/parameter[@name='Body']" /> </action> </do> </fsm> <message> <parameter name="AlternateViews">text/html</parameter> <parameter name="Attachements" /> <parameter name="Body" /> <parameter name="Sender">Expresslane <%# sqlscalar:select @@servername%> </parameter> <parameter name="Subject" /> <parameter name="SubjectEncoding"/> <parameter name="To"><%#sqlscalar:select dbo.fsEmailReceipientOfOrder(<%OrderId%>)%> </parameter> </message> </fsm>

这个正则表达式

(?<vars>(?><%[\s]*)\w+(?>[\s]*%>))

哪个maches&lt;%OrderId%&gt;文本 在节点中      / FSM / fparameters / fparameter [@名称='fsOAPath“] 和/ fsm / message / parameter / [@ name ='To'] 什么是包含的正则表达式 本地节点的fparameter本地名称和参数

1 个答案:

答案 0 :(得分:1)

试试这个正则表达式:

<(?<localName>[^\s]+).+(?<vars>(?><%[\s]*)\w+(?>[\s]*%>))

演示

http://regex101.com/r/zI7zW8