what xml regex xsd isbn

what is xml



Expresión regular para un ISBN 13 (3)

Hola, estoy intentando todo el tiempo hacer una expresión regular para XML en mi .xsd .

Esta expresión debería verificar un número ISBN-13, pero no podría ir más allá de esto:

ISBN (978|979)[ |-][0-9]{1,5}[ |-][0-9]{1,7}[ |-][0-9]{1,7}[0-9]{1}

Esto está bien si alguien rellena un ISBN13 correcto, pero también es posible hacer números ISBN mucho más largos (por ejemplo, aún es posible hacer que el primer bloque de números sea 5 largo y los segundos 7 dígitos y el tercero también 7 dígitos largos).

Soy muy nuevo en este tema y no puedo resolver este problema, por lo tanto, espero que alguien pueda ayudarme o resolver mi problema.

Sé en qué consiste un ISBN 13, revisé wikipedia y otros sitios web, pero mi problema real es la expresión regular.

Espero que esto no se haya preguntado antes, así que lamento que alguien haya hecho esta pregunta antes. jajay07


De acuerdo con http://regexlib.com/REDetails.aspx?regexp_id=1747 la expresión regular

ISBN(-1(?:(0)|3))?:?/x20+(?(1)(?(2)(?:(?=.{13}$)/d{1,5}([ -])/d{1,7}/3/d{1,6}/3(?:/d|x)$)|(?:(?=.{17}$)97(?:8|9)([ -])/d{1,5}/4/d{1,7}/4/d{1,6}/4/d$))|(?(.{13}$)(?:/d{1,5}([ -])/d{1,7}/5/d{1,6}/5(?:/d|x)$)|(?:(?=.{17}$)97(?:8|9)([ -])/d{1,5}/6/d{1,7}/6/d{1,6}/6/d$)))

coincide tanto con los ISBN de 10 dígitos antiguos como con los nuevos ISBN de 13 dígitos.

Puede usar fácilmente (quizás no muy fácilmente) la parte de esta expresión regular que necesita.


ISBN(?:-13)?:?/x20*(?=.{17}$)97(?:8|9)([ -])/d{1,5}/1/d{1,7}/1/d{1,6}/1/d$

Debería coincidir:
ISBN-13: 978-1-4028-9462-6
ISBN: 978-1-4028-9462-6
ISBN-13 978-1-4028-9462-6
ISBN 978-1-4028-9462-6


Ver también ISBN en xFront:

Hemos creado una definición SimpleType de Schema XML para ISBN. Esta definición de ISBN cubre todos los formatos legales de ISBN en todo el mundo.