ISBN13 验证
在类或 CustomValidator 中验证 ISBN13 号码的格式和正确校验和(ISBN:

引言
这是我的第一篇文章,希望不是最后一篇。我一直在寻找一篇好的、简单的文章来开始。我希望这是一个好的开始,并且大家可以使用我的代码。
这篇文章的功能是解释我创建的 ISBN13
验证对象的功能。它验证 ISBN International 指定的几个不同的方面。我将在本文中解释它们。
背景
ISBN 编号的基本思想是书籍的代码标准。对于那些想了解更多关于 ISBN 的人,这里有一些来自 Wikipedia 和 ISBN International 的信息。
相关文章
The Code Project 上还有另一篇文章 (ASP.NET ISBN 验证器) 关于 ISBN 验证。但是,有一些区别。
这段代码
- 是用 C# 编写的
- 有一个单独的
ISBN13
验证类 - 验证分组和未分组的
ISBN13
编号 - 仅验证
ISBN13
编号(目前是标准)
Using the Code
代码非常基础和直接。该库有一个类 ISBN.ISBN13
。这是一个示例代码,用于演示该类的用法。如你所见,构造函数有一个重载,可以直接输入 ISBN。
ISBN.ISBN13 isbnValid = new ISBN13();
isbnValid.ISBN = "978-0-571-08989-5";
ISBN.ISBN13 isbnValid2 = new ISBN13("978-0-571-08989-5");
ISBN 设置后会立即进行验证。你可以使用 IsValid
属性查看它是否有效。
ISBN13
还有一些有趣的 static
方法。这些方法易于使用。
-
IsValidISBN(string isbn) : bool
-
GetISBNFormat(string isbn) : ISBNGroupingFormat
-
ValidateChecksum(string isbn) : bool
要使用验证器控件,请添加 ToolboxItem
。这样你就可以拖放该控件。它继承自 CustomValidator
控件。验证由 ISBN13
类完成。
你也可以在 ASP 表单中使用以下内容来使用 ISBN 验证器。
<%@ register assembly="ISBN" namespace="ISBN.Web" tagprefix="cc1" %>
<%cc1:isbn13validator controltovalidate="TextBox1"
runat="server" id="ISBN13Validator1"%>
</cc1:isbn13validator%>
关注点
最有趣的一点是用于验证分组 ISBN 的复杂的 RegEx 字符串
。这是我编写的第一个这么长的 RegEx
吗?
历史
- 2007 年 3 月 27 日:初始发布