Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式以取消匹配空格、空标记或$symbol_Regex_Xsd - Fatal编程技术网

Regex 正则表达式以取消匹配空格、空标记或$symbol

Regex 正则表达式以取消匹配空格、空标记或$symbol,regex,xsd,Regex,Xsd,我在XSD中为一个XML元素编写正则表达式。 条件如下: 它不应为空或空白,或者标记值不应包含后跟字母的$。 例如: <element>I am $A test</element>--- this is invalid. <element>I am $a test</element>--- this is invalid. <element></element>--- this is invalid. <eleme

我在XSD中为一个XML元素编写正则表达式。 条件如下: 它不应为空或空白,或者标记值不应包含后跟字母的$。 例如:

<element>I am $A test</element>--- this is invalid.

<element>I am $a test</element>--- this is invalid.

<element></element>--- this is invalid.
<element>   </element>--- this is invalid.

<element>I am $123.0 test on 02/01/2018 ongoing </element>--- this is valid.
<element>I am $123.0 test on 02/01/2018 ongoing 
month for another year
</element>--- this is valid.
<element>I am test</element>--- this is valid.
我是$A测试---这是无效的。
我是$a一次测试,这是无效的。
---这是无效的。
---这是无效的。
我是2018年1月2日进行的$123.0测试,这是有效的。
我是$123.0,2018年1月2日的测试正在进行中
再过一年的一个月
---这是有效的。
我正在测试——这是有效的。
用于检查我在正则表达式下面使用的空/空格。 但这对于后面跟字母表的$character不起作用。 XSD:



你能帮我解决上面的问题吗。

这适用于大多数引擎
(?s)^(?。*\$[a-zA-Z])(?!\s*$).$
@sln XSD regex引擎是一个文本导向的引擎,不支持lookarounds。哦,它是什么确切的引擎?@sln XML Schema regex引擎。然后,你能得到的最接近的引擎是
^[^$\s]*(?:\s*\$\d[^$\s]*\s].\s+\s++[$\s]*)$
它将不检查空元素的位置。所以,没有空元素检查可用。。。很抱歉
<xs:element name="element" minOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:pattern value="[\s\S]*[^ ][\s\S]*" />
</xs:restriction>
</xs:simpleType>
</xs:element>