3

我有几个用于匹配 ISBN 10 的 PHP 正则表达式,但我找不到一个与 MySQL 兼容的REGEXP,有人可以帮我在 MySQL 中匹配 ISBN 10 吗?

我已经尝试过这个(适用于 PHP,但不适用于 MySQL)

"^(97(8|9))?\d{9}(\d|X)$"

以下是我运行此正则表达式的一些值:

ISBN10: 0470945176
by Paul D. Kimmel
Publisher: John Wiley & Sons
Copyright year: © 2011

Thomas E. Creighton (Author)
ISBN-10: 0471153028 
Publisher: Wiley-Interscience; 1 edition (April 8, 1999)
2878 pages
4

1 回答 1

3

\dMySQL 正则表达式中不存在该快捷方式。改用[[:digit:]]字符类:

"^(97(8|9))?[[:digit:]]{9}([[:digit:]]|X)$"

sqlfiddle上查看。

于 2013-01-19T22:45:57.400 回答