Как проверить элемент в XML с помощью регулярного выражения - PullRequest
0 голосов
/ 08 июля 2019

Здесь я пытаюсь проверить поле ссылочного номера, в котором должны быть разрешены только определенные символы, такие как «A» - «Z», «0» - «9», «-» и «_». Как я могу это сделать?

<field name="txtNumeroDossier" type="texte" maxlength="15" focus="true">
    <description_f>Votre numéro de référence</description_f>
    <description_a>Your reference number</description_a>
</field>

1 Ответ

0 голосов
/ 08 июля 2019

Вам необходимо использовать XSD-схему для проверки, создать новый .xsd файл:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="SNAPSHOT" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <!-- create new simple type for description fields,
       restriction by pattern will validate by regexp -->
  <xs:simpleType name="description">
    <xs:restriction base="xs:string">
      <xs:pattern value="[a-z0-9\-_]+"/>
    </xs:restriction>
  </xs:simpleType>
  <!-- field root element type declaration -->
  <xs:complexType name="field">
    <xs:all>
      <!-- description elements of type description with validation -->
      <xs:element name="description_f" type="description"/>
      <xs:element name="description_a" type="description"/>
    </xs:all>
    <!-- attributes -->
    <xs:attribute name="name" type="xs:string"/>
    <xs:attribute name="type" type="xs:string"/>
    <xs:attribute name="maxlength" type="xs:string"/>
    <xs:attribute name="focus" type="xs:string"/>
  </xs:complexType>
  <!-- root element declaration of type field -->
  <xs:element name="field" type="field"/>
</xs:schema>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...