xsd模式中支持的字符

时间:2016-02-11 12:52:04

标签: xml xsd xsd-validation

我在xsd中有以下内容,模式显示它应该是“\ d {10}”,这是否意味着:

  • 它只支持10个字符(即数字,字母,特殊字符 字符)
  • 它仅支持10位数字(即仅0到9)

以下是xml:

CREATE TABLE #test
    (
      cont_sal INT ,
      check_value INT ,
      operator VARCHAR(50)
    )

INSERT  #test
VALUES  ( 10, 20, '+' ),
        ( 20, 10, '+' ),
        ( 10, 20, '-' ),
        ( 20, 10, '-' )

DECLARE @sqlnet SQLNET = SQLNET::New('')

SELECT  cont_sal ,
        check_value ,
        @sqlnet.Code('x ' + operator + ' y')
           .Val('x', cont_sal)
           .Val('y', check_value)
           .Eval()
FROM    #test

DROP TABLE #test

1 个答案:

答案 0 :(得分:2)

在模式语言及其正则表达式中,\d代表Unicode十进制数字,包括ASCII数字01,...,9,还有很多其他脚本的其他数字,请参阅http://www.fileformat.info/info/unicode/category/Nd/list.htm。如果您只想允许ASCII数字,请使用[0-9]{10}