正则表达试
常见的Java上机面试题

常见的Java上机面试题在程序员面试中,主要的考试形式分为笔试和上机编程考试两部分。
笔试主要考查面试者的基础是否牢固;上机考试主要考查面试者的实际开发能力和技术技巧。
上机编程考试,要求面试者能够根据题目的要求,使用一种编程工具,编写全部代码并调试运行。
这主要是考查面试者代码书写和编程的熟练程度。
值得注意的是,这类面试题要求能够正确运行,往往要求面试者使用比较原始的JDK编译方式也就是使用DOS命令提示符,而不是提供Eclipse或者JBuilder等快速开发环境。
本章将经常出现的上机编程题进行分类,希望能够给读者带来帮助和启示。
17.1 Java基础编程试题(1)在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。
面试题1 怎样截取字符串考题题干编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个"。
试题分析本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。
参考答案具体代码实现如下:1.package core_java;2.import java.util.Scanner;3.public class InterceptionStr {4.static String ss;//要进行截取操作的字符串5.static int n;//截取的字符串的字节数6.public static void main(String[] args) {7. System.out.println("请输入字符串:");8. Scanner scStr = new Scanner(System.in);//从键盘获取字符串9. ss = scStr.next(); //将Scanner对象中的内容以字符串的形式取出来10. System.out.println("请输入字节数:");11. Scanner scByte = new Scanner(System.in);//从键盘获取字符串12. n = scByte.nextInt();//将Scanner对象中的内容以数值的形式取出来13. Interception(setValue());//方法与方法间的套用14. }15.public static String[] setValue() {//此方法的作用是将字符串转换成字符串数组16. String[] string = new String[ss.length()];//创建一个字符数组string17.for (int i = 0; i < string.length; i++) {18. string[i] = ss.substring(i, i + 1);19.//将字符串ss中的第i个字符取出,放入字符数组中string中20. }21.return string;//将这个字符数组返回22. }23.public static void Interception(String[] string) {24.int count = 0;25. String m = "[\u4e00-\u9fa5]";//汉字的正则表达试26. System.out.println("以每" + n + "字节划分的字符串如下所示:");27.for (int i = 0; i < string.length; i++) {28.if (string[i].matches(m)) {29.//将字符数组中的每一个元素与表则表达式进行匹配,如果相同则返回true30. count = count + 2;//如果当前字符是汉字,计数器count就加231. } else {32. count = count + 1;//如果当前字符不是汉字,计数器count就加133. }34.if (count < n) {//如果当前计数器count的值小于n,则输出当前字符35. System.out.print(string[i]);36. } else if (count == n) {//如果当前计数器count的值等于n,则输出当前字符37. System.out.print(string[i]);38. count = 0;39. System.out.println();//内循环结果,则需要换行,起到控制打印格式的作用40. } else {41. count = 0;//如果当前计数器count的值大于n,则计数器count清零,接着执行外部循环42. System.out.println();43. }44. }45. }46.}程序的输出结果如图17.1所示。
Everything中如何使用正则表达式搜索

Everything中如何使用正则表达式搜索Everything中如何使用正则表达式搜索博客分类:技术笔记正则表达式CC++C#Everything是一款不错的文件搜索软件,虽然不支持全文搜索,但是对我来说已经够用了。
在Everything中如何使用正则搜索呢?在使用之前,确保已经打开正则表达式选项(菜单Search → Enable Regex)| 竖线表示或。
例如:gray|grey 能够匹配 gray或grey(注:在|两侧没有空格)。
() 小括号用于确定范围。
例如:gr(a|e)表示在gr和y之间有一个字母a或e。
gr(a|e)y将匹配gray或grey,与gray|grey意义相同。
问号表示其前一个字符可能出现,也有可能不出现。
例如:colou?r将匹配color和colour。
* 星号表示其前一个字符可能不出现,也可能出现一次或多次。
例如:ab*c将匹配ac、abc、abbc、abbbc等等。
+ 加号表示其前一个字符出现一次或多次。
例如:ab+c将匹配abc、abbc、abbbc等等,但不能匹配ac。
. 点号可用匹配任何单个非新行字符。
(事实上,把哪个字符称之为新行却是不一定的,可能是编码特别或位置特别,但是可以肯定的是这个行中一定包含其他字符。
)在POSIX括号表达式规则中,点号只匹配一个点。
例如:a.c可以匹配abc等等字符,但是[a.c]只匹配a、.、或c。
[ ] 中括号表示能够匹配其括号内出现的一个字符。
例如:[abc]能够匹配a、b或c。
[a-z]将能够匹配a到z之间的任意一个字符。
[abcx-z]能够匹配a、b、c、x、y或z,其也可以表示成[a-cx-z]。
[^ ] [^ ]表示可以匹配任何一个没有出现在其括号内的字符,与[ ]刚好相反。
例如:[^abc]能够匹配任何一个不是a、b、c的字符。
[^a-z]能够匹配任何一个非小写字母之外的字符。
^ 匹配名称开始的位置。
在以行为基础的工具中,匹配任意行的开始位置。
菜鸟正则表达

菜鸟正则表达正则表达式是一种用于匹配文本的模式。
它是一种强大的工具,可以用于搜索、替换和验证文本。
但是,对于初学者来说,正则表达式可能会让人感到困惑和不知所措。
因此,本文将介绍一些菜鸟正则表达式的基础知识,帮助初学者更好地理解和使用正则表达式。
1.基础语法正则表达式由字符和特殊字符组成。
字符可以是字母、数字或其他字符,而特殊字符则具有特殊的含义。
例如,正则表达式中的“.”表示任何字符,“\d”表示任何数字,“\w”表示任何字母、数字或下划线,“\s”表示任何空格字符。
2.匹配模式正则表达式可以使用不同的匹配模式来匹配文本。
最常用的匹配模式是“贪婪模式”,它会尽可能多地匹配文本。
例如,正则表达式“a.*b”将匹配任何以“a”开头、以“b”结尾的文本。
但是,如果文本中存在多个“a”和“b”,则该正则表达式将匹配最长的文本。
如果想要匹配最短的文本,可以使用“非贪婪模式”。
例如,正则表达式“a.*?b”将匹配最短的以“a”开头、以“b”结尾的文本。
3.字符集正则表达式中的字符集用于匹配一组字符中的任何一个字符。
例如,正则表达式“[abc]”将匹配任何一个字符“a”、“b”或“c”。
字符集还可以使用“-”表示范围。
例如,正则表达式“[a-z]”将匹配任何一个小写字母。
4.分组正则表达式中的分组用于将多个字符组合在一起,并对其进行操作。
例如,正则表达式“(ab)+”将匹配一个或多个“ab”字符串。
分组还可以使用“|”表示“或”。
例如,正则表达式“(a|b)”将匹配字符“a”或“b”。
5.转义字符正则表达式中的转义字符用于将特殊字符转义为普通字符。
例如,正则表达式“\.”将匹配字符“.”而不是任何字符。
转义字符还可以用于匹配特殊字符。
例如,正则表达式“\d”将匹配任何数字。
正则表达式是一种非常强大的工具,可以用于搜索、替换和验证文本。
虽然初学者可能会感到困惑和不知所措,但只要掌握了基础知识,就可以轻松地使用正则表达式。
pattern.matches正则表达解析

pattern.matches正则表达解析正则表达式是一种通用的文本匹配方式,在不同的编程语言和软件工具中都被广泛应用。
Java语言中也提供了对正则表达式的支持,其最常用的方式是使用Pattern和Matcher两个类进行正则表达式的解析和匹配。
在这篇文章中,我们将详细探讨Pattern.matches()方法的使用,以及解析正则表达式的一些基本概念。
一、Pattern.matches()方法Pattern.matches()是Java语言中解析正则表达式的一个方法,它的定义如下:``` public static boolean matches(String regex, CharSequence input) ```其中,regex表示正则表达式的字符串,input表示要匹配的字符串。
该方法的返回值是一个boolean类型,表示输入字符串是否匹配正则表达式。
下面,我们来看一个例子:```java String regex = "a.*b"; String input = "abcdbb"; boolean isMatch = Pattern.matches(regex, input); ``` 该正则表达式含义是以a开头,以b结尾,并且中间可以是任意字符。
在这个例子中,输入字符串是"abcdbb",符合该正则表达式,因此isMatch的值为true。
常见的正则表达式符号包括:符号 | 含义 --- | --- . | 匹配任意单个字符,但换行符除外 * | 匹配0个或多个前面的字符 + | 匹配1个或多个前面的字符 ? | 匹配0个或1个前面的字符 \ | 转义字符,用于匹配特殊符号 [] | 匹配方括号中的任意一个字符,如[a-z]表示匹配任意一个小写字母 [^] | 匹配方括号中除了指定字符以外的任意一个字符,如[^0-9]表示匹配任意一个非数字字符当然,在正则表达式中还可以包含分组、捕获、后向引用等更为复杂的语法,这里就不在赘述。
outlook 正则表达 规则

文章标题:深入理解 Outlook 正则表达式规则1. 介绍在现代社会中,邮件已成为人们工作和生活中不可或缺的一部分。
而Outlook 作为一款广泛使用的邮件客户端,其功能强大,但也复杂。
其中,正则表达式规则作为 Outlook 中非常重要的一部分,可以帮助用户更高效地管理和处理邮件。
本文将深入探讨 Outlook 正则表达式规则,帮助读者全面理解并灵活运用。
2. 什么是正则表达式在深入讨论 Outlook 正则表达式规则之前,首先要了解正则表达式的概念。
正则表达式是一种强大的文本匹配模式,可以用来在字符串中进行模式匹配和搜索。
它是通过一系列字符和控制字符来构成匹配规则的表达式,可以灵活地进行匹配,替换,提取等操作。
3. Outlook 中的正则表达式规则Outlook 作为一款强大的邮件客户端,其正则表达式规则功能也非常丰富。
用户可以在 Outlook 中使用正则表达式规则来管理收件箱中的邮件,实现自动分类、过滤、回复等功能。
通过设置不同的匹配规则,用户可以将特定的邮件自动归档到指定文件夹,或者自动进行回复等操作,极大地提高了邮件处理的效率。
4. 如何使用 Outlook 正则表达式规则要想灵活使用 Outlook 的正则表达式规则,首先需要了解其基本的语法和功能。
在 Outlook 中,正则表达式规则可以应用在邮件的主题、发件人、收件人、内容等方面。
用户可以根据自己的需求,设置不同的规则来实现个性化的邮件处理。
5. 实例演示以下是一些常见的使用正则表达式规则的实例演示:- 将特定发件人的邮件自动归档到指定文件夹- 根据邮件主题关键词进行自动回复- 过滤垃圾邮件- 实现不同级别的自动转发6. 个人观点和理解个人认为,正则表达式规则在 Outlook 中的应用非常灵活多样,可以帮助用户实现个性化的邮件管理。
但也需要注意规则设置的合理性和准确性,避免出现误判和错误处理的情况。
在使用正则表达式规则时,需要谨慎设置和不断调整,以适应不同情况下的实际需求。
正则校验的方法

正则校验的方法(原创实用版4篇)目录(篇1)1.正则校验的概述2.正则校验的方法3.正则校验的实际应用4.正则校验的优点与局限性正文(篇1)正则校验的概述正则校验是一种用来验证数据格式是否符合特定规则的技术,其基于正则表达式(Regular Expression,简称“regex”)进行操作。
正则表达式是一种强大的文本处理工具,可以用来查找特定的文本模式、验证输入的数据格式等。
在计算机科学和软件工程领域,正则校验被广泛应用于数据验证、搜索与替换等场景。
正则校验的方法正则校验的方法主要包括以下几个步骤:1.确定验证规则:根据需求,确定需要验证的数据格式。
例如,验证一个邮箱地址、手机号码或者用户名等。
2.编写正则表达式:根据验证规则,编写相应的正则表达式。
正则表达式包括一些特殊的字符和符号,如“.”(匹配任意字符)、“*”(匹配零个或多个前面的字符)、“^”(匹配字符串的开始位置)等。
3.使用正则函数进行校验:将待验证的数据与正则表达式进行匹配,如果匹配成功,则表示数据格式符合要求;否则,表示数据格式不符合要求。
正则校验在实际应用中具有广泛的应用,例如:1.表单验证:在网页表单提交前,通过正则校验确保用户输入的数据格式正确,如邮箱地址、密码等。
2.数据清洗:对大量数据进行处理时,可以使用正则表达式来清理不符合要求的数据,提高数据质量。
3.文本分析:在自然语言处理领域,正则表达式可以用来查找特定的文本模式,如关键词提取、句子分割等。
正则校验的优点与局限性正则校验的优点:1.表达能力强:正则表达式可以描述非常复杂的数据格式,满足各种验证需求。
2.通用性强:正则表达式可以应用于多种编程语言,如 Python、Java、JavaScript 等。
3.效率高:正则表达式通常具有较高的匹配速度,能够快速完成验证任务。
正则校验的局限性:1.编写难度高:正则表达式的编写较为复杂,需要掌握一定的技巧。
2.可读性差:正则表达式的语法较为晦涩,不易于阅读和理解。
思源笔记正则表达
思源笔记是一种常见的笔记软件,支持多种文本处理功能,其中正则表达式是一种强大的文本匹配和处理工具。
在思源笔记中,你可以使用正则表达式来查找、替换、提取等操作文本。
以下是一些常见的正则表达式语法和示例,可以帮助你在思源笔记中进行文本处理:
1. 查找文本:
* 查找单个字符:`a` 查找字母“a”
* 查找多个字符:`ab` 查找字母“a”后跟字母“b”
* 查找数字:`\d` 查找数字字符
* 查找任意字符:`.` 查找除换行符之外的任意字符
2. 替换文本:
* 替换单个字符:`a -> b` 将所有字母“a”替换为字母“b”
* 替换多个字符:`ab -> xy` 将所有字母“a”后跟字母“b”替换为字母“x”后跟字母“y”
* 替换特定模式:`(\d) -> \1` 将所有数字字符替换为其前面匹配到的内容(例如,将“123”替换为“123”前面匹配到的内容)
3. 提取文本:
* 提取单行文本:`^匹配内容$` 提取以匹配内容开头和结尾的行
* 提取多行文本:`^匹配行开始内容.*^匹配行结束内容` 提取以匹配行开始内容和匹配行结束内容分隔的文本块
* 提取数字:`\d+` 提取一个或多个数字字符
* 提取特定模式:`(\d)(\d)(\d)` 提取一个以三个数字字符组成的模式(例如,提取“123”)
以上只是正则表达式的一些基本语法和示例,你可以根据具体需求进行更复杂的文本处理操作。
请注意,具体的语法和功能可能因软件版本和平台而有所不同,建议查阅思源笔记的官方文档或使用在线正则表达式测试工具进行学习和验证。
canal adapter targetcolumns 正则表达 -回复
canal adapter targetcolumns 正则表达-回复正则表达式(Regular Expression)是一种强大的文本处理工具,它能够帮助我们在大量文本中快速找到符合某种模式的内容。
在本文中,我们将以“canal adapter targetcolumns”为主题,分步回答并解释这个主题涵盖的概念和技术。
第一步,我们来了解“canal adapter targetcolumns”这个主题中的每个关键词的含义和作用。
- Canal:Canal是阿里巴巴公司开源的数据库增量订阅&消费组件。
它能够帮助我们获取数据库的数据变更,并将这些变更以实时流的形式传递给下游消费者,例如搜索引擎、缓存或者数据分析系统等。
- Adapter:Adapter指适配器,它是一种设计模式,用于将两个不兼容的接口之间进行转换,使它们能够协调工作。
在Canal中,Adapter用于将Canal的数据格式转换为下游消费者所需的格式。
- Target Columns:Target Columns指目标列,即在数据传输过程中,我们想要提取并处理的特定字段或列。
第二步,我们来介绍Canal Adapter和Target Columns这两个概念的关系。
Canal Adapter是为了将Canal的数据转换为下游消费者所需的格式而开发的一个插件。
它扮演了一个适配器的角色,用于连接Canal和下游消费者,并在两者之间进行数据格式的转换。
Target Columns则是在数据转换过程中非常重要的一部分。
它们用于指定我们希望从Canal获取的数据中提取的具体字段或列。
通过指定这些目标列,我们可以从大量的数据中提取出我们所需的部分,提高数据处理的效率和准确性。
第三步,让我们来详细探讨Canal Adapter的使用和Target Columns的配置。
首先,我们需要在Canal的配置文件中配置Adapter插件。
通常,Canal 提供了不同类型的Adapter插件,我们需要根据下游消费者的需求选择合适的插件,并添加到Canal的配置中。
regexp验证规则写法
regexp验证规则写法全文共四篇示例,供读者参考第一篇示例:正则表达式(Regular Expression,简称RegExp)是一种用于字符串匹配和搜索的强大工具。
通过使用正则表达式,我们可以轻松地检查给定的字符串是否符合特定的模式或规则。
在实际编程中,正则表达式被广泛应用于数据验证、文本搜索和替换等方面。
在本文中,我们将重点介绍正则表达式验证规则的写法,帮助读者了解如何有效地利用正则表达式进行数据验证和匹配。
一、基本语法在正则表达式中,我们通常需要使用一系列的元字符和普通字符来定义一个匹配模式。
以下是一些常用的元字符:1. “^”:表示匹配字符串的起始位置;2. “”:表示匹配字符串的结束位置;3. “.”:表示匹配任意单个字符;4. “*”:表示匹配前一个字符0次或多次;5. “+”:表示匹配前一个字符1次或多次;6. “?”:表示匹配前一个字符0次或1次;7. “[]”:表示匹配方括号内任意一个字符;8. “()”:表示捕获匹配的子表达式;除了元字符外,正则表达式还支持普通字符的匹配,例如字母、数字、空格等。
在编写正则表达式验证规则时,我们需要综合运用元字符和普通字符,构建出完整的匹配模式。
二、常见应用场景正则表达式的验证规则可以灵活地应用于各种数据验证场景,如邮箱格式验证、手机号码验证、身份证号码验证等。
下面我们分别介绍这几种常见验证规则的写法:1. 邮箱格式验证:邮箱格式一般包括用户名、@符号、域名等部分。
一个基本的邮箱验证规则可以写为:^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\.[a-zA-Z]{2,4}该正则表达式表示,邮箱的用户名部分包含字母、数字、下划线和短横线,域名部分也包含字母、数字、下划线和短横线,且域名的后缀为2到4个字符的字母。
2. 手机号码验证:中国大陆手机号码通常以1开头,总长度为11位。
一个简单的手机号码验证规则可以写为:^1[3|4|5|7|8][0-9]{9}该正则表达式表示,手机号码以1开头,第二位数字为3、4、5、7或8,后面接9位数字。
点的正则表达
点的正则表达点是正则表达式中最基本的元字符之一,用于匹配任意单个字符。
在正则表达式中,一个点代表一个字符,可以是任何字符,包括字母、数字、标点符号、汉字等等。
点通常用来匹配一个不确定的字符,使得模式可以更加灵活地匹配不同的文本。
使用点来匹配任意字符的方式非常简单,只需要在正则表达式中使用一个点元字符即可。
例如,正则表达式a.b可以匹配所有由a和b 之间随意插入一个任意字符所组成的字符串,如"acb"、"adb"、"a0b"等等。
点元字符还有一些特殊的用法,下面我们来逐一介绍。
1.匹配换行符默认情况下,点元字符只能匹配除换行符以外的任意字符。
如果需要匹配换行符,可以使用正则表达式的单行模式(dotall mode)。
单行模式可以通过在正则表达式开头添加"(?s)"来启用,也可以在匹配函数中传入re.DOTALL标志来实现。
例如,正则表达式"(?s)a.b"可以匹配所有由a和b之间随意插入任意数量的字符包括换行符所组成的字符串,如"a\rb"、"a\nb"、"a\0b"等等。
2.匹配任意字符(贪婪模式)点元字符默认的匹配方式是贪婪模式(greedy mode),即尽可能多地匹配字符。
在贪婪模式下,一个点元字符可以匹配任意数量的字符,直到无法继续匹配为止。
例如,正则表达式a.*b可以匹配所有以a开头、以b结尾并且中间含有任意数量、任意字符的字符串,如"ab"、"axyzb"、"a1234567890b"等等。
3.匹配任意字符(非贪婪模式)为了避免点元字符过于贪婪,可以使用非贪婪模式(non-greedy mode)来匹配任意字符。
非贪婪模式可以在点元字符后面加上一个问号(?),表示只匹配最少的字符。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
"^d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?d+$" //整数 "^d+(.d+)?$" //非负浮点数(正浮点数 + 0) "^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数 "^((-d+(.d+)?)|(0+(.0+)?))$" //非正浮点数(负浮点数 + 0) "^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数 "^(-?d+)(.d+)?$" //浮点数 "^[A-Za-z]+$" //由26个英文字母组成的字符串 "^[A-Z]+$" //由26个英文字母的大写组成的字符串 "^[a-z]+$" //由26个英文字母的小写组成的字符串 "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 "^w+$" //由数字、26个英文字母或者下划线组成的字符串 "^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$" //email地址 "^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$" //url "^[A-Za-z0-9_]*$" ===================================================
=================================================== /* * 前台JS表单脚本(输入&验证)库
*注:请使用本JS表单脚本(输入&验证)库的同时保留此版权信息,此是作者花了时间去收集整理以及编写的,谢谢! * 此版本采用GB2312编码格式,请在使用前进行字符编码转换,以保证能够正常使用 */ /* * 以下是库函数目录及使用说明: * *常用 *1、Trim=去除字符串前后空格 使用方法:String.trim() *2、ctrim=去除字符串中间空格 使用方法:String.ctrim() *3、 onClickSelect=点中text框的时候,选中其中的文字 使用方法:在input位置加上 onClick/onFocus="onClickSelect();" 即可 * *动态输入类 使用方法:在input位置加上 即可 *1、TextOnly=只允许输入字母、数字、下划线 *2、TextNumOnly=只允许输入字母、数字 *3、NumOnly=只允许输入数字 *4、TelOnly=只能输入电话、"-"、"("、")" * * 表单验证类 *1、isAccount=是否帐号(由字母、数字、下划线组成){有两种选择,一种有长度限制} *2、 isChinese=是否中文(由中文、数字、字母组成) *3、ismail=是否Email *4、isip=是否ip *5、 PhoneCheck=电话号码检测(电话和手机) *6、isMobile=手机号码检测 *7、isDate=是否短日期 *8、 isTime=是否时间 *9、isDateTime=是否长日期 * *其它函数 *1、changeFrame=改变 Frame大小 *2、CheckAll=全选/全不选 *3、onKeyDownDefault=回车->转->Tab *4、 admin_Size=改变TextArea输入框高度 * *其它验证正则表达式 *Email : /^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/ *Phone : /^(((d{2,3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}(-d{1,4})?$/ *Url : /^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]‘:+!]*([^<>""])*$/ *Currency : /^d+(.d+)?$/ *Number : /^d+$/ *Zip : /^[1-9]d{5}$/ *QQ : /^[1-9]d{4,8}$/ *Integer : /^[-+]?d+$/ *Double : /^[-+]?d+(.d+)?$/ *English : /^[A-Za-z]+$/ *Chinese : /^[u0391-uFFE5]+$/ *UnSafe : /^(([A-Z]*|[a-z]*|d*|[-_~!@#$%^&*.()[]{}<>?/‘"]*)|.{0,5})$|s/ *Username : /^[a-z]w{3,}$/i(用户名验证,带长度限制) */
//======================================================================== 常用函数 //--------------------------------除去前后空格 String.prototype.trim = function() { //用正则表达式将前后空格用空字符串替代。 return this.replace(/(^s*)|(s*$)/g, ""); } //-------------------------------- 除去中间空格 String.prototype.ctrim = function() { //用正则表达式将中间空格用空字符串替代。 return this.replace(/s/g,‘‘); } //-------------------------------- 点中text框的时候,选中其中的文字 /** *方法名:onClickSelect *描述:点中text框的时候,选中其中的文字 *输入:空 *输出:空 **/ function onClickSelect() { var obj = document.activeElement; if(obj.tagName == "TEXTAREA") { obj.select(); } if(obj.tagName == "INPUT" ) { if(obj.type == "text") obj.select(); } }
/* * 判断是否为数字,是则返回true,否则返回false */ 代码 function f_check_number(obj) { if (/^d+$/.test(obj.value)) { return true; } else { f_alert(obj,"请输入数字"); return false; } }
/* * 判断是否为自然数,是则返回true,否则返回false */ 代码 function f_check_naturalnumber(obj) { var s = obj.value; if (/^[0-9]+$/.test( s ) && (s > 0)) { return true; } else { f_alert(obj,"请输入自然数"); return false; } }
/* * 判断是否为整数,是则返回true,否则返回false */ 代码 function f_check_integer(obj) { if (/^(+|-)?d+$/.test( obj.value )) { return true; } else { f_alert(obj,"请输入整数"); return false; } }
/* * 判断是否为实数,是则返回true,否则返回false */ 代码 function f_check_float(obj) { if (/^(+|-)?d+($|.d+$)/.test( obj.value )) { return true; } else { f_alert(obj," 请输入实数"); return false; } }
//======================================================================== 动态输入类函数 //--------------------------------只允许输入字母、数字、下划线(动态判断) function TextOnly(){ var i= window.event.keyCode //8=backspace //9=tab //37=left arrow //39=right arrow //46=delete //48~57=0~9 //97~122=a~z //65~90=A~Z //95=_