当前位置: 首页 > >

正则表达式验证

发布时间:

"^\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

一、验证类 1、数字验证内 1.1 整数 /^(-|\+)?\d+$/.test(str) 1.2 大于 0 的整数 (用于传来的 ID 的验证) /^\d+$/.test(str) 1.3 负整数的验证 /^-\d+$/.test(str) 2、时间类 2.1 短时间,形如 (13:04:06)

function isTime(str) { var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/); if (a == null) {alert('输入的参数不是时间格式'); return false;} if (a[1]>24 || a[3]>60 || a[4]>60) { alert("时间格式不对"); return false } return true; } 2.2 短日期,形如 (2003-12-05) function strDateTime(str) { var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); if(r==null)return false; var d= new Date(r[1], r[3]-1, r[4]); return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]); } 2.3 长时间,形如 (2003-12-05 13:04:06) function strDateTime(str) { var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/; var r = str.match(reg); if(r==null)return false; var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.get Minutes()==r[6]&&d.getSeconds()==r[7]); } 2.4 只有年和月。形如(2003-05,或者 2003-5) 2.5 只有小时和分钟,形如(12:03) 3、表单类 3.1 所有的表单的值都不能为空 <input onblur="if(this.value.replace(/^\s+|\s+$/g,'')=='')alert('不能为空!')"> 3.2 多行文本框的值不能为空。 3.3 多行文本框的值不能超过 sMaxStrleng 3.4 多行文本框的值不能少于 sMixStrleng 3.5 判断单选框是否选择。 3.6 判断复选框是否选择. 3.7 复选框的全选,多选,全不选,反选 3.8 文件上传过程中判断文件类型 4、字符类 4.1 判断字符全部由 a-Z 或者是 A-Z 的字字母组成

<input onblur="if(/[^a-zA-Z]/g.test(this.value))alert('有错')"> 4.2 判断字符由字母和数字组成。 <input onblur="if(/[^0-9a-zA-Z]/g.test(this.value))alert('有错')"> 4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母 /^([a-zA-z_]{1})([\w]*)$/g.test(str) 4.4 字符串替换函数.Replace(); 5、浏览器类 5.1 判断浏览器的类型 window.navigator.appName 5.2 判断 ie 的版本 window.navigator.appVersion 5.3 判断客户端的分辨率 window.screen.height; window.screen.width;

6、结合类 6.1 email 的判断。 function ismail(mail) { return(new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(mail) ); } 6.2 手机号码的验证 6.3 身份证的验证 function isIdCardNo(num) { if (isNaN(num)) {alert("输入的不是数字!"); return false;} var len = num.length, re; if (len == 15) re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/); else if (len == 18) re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/); else {alert("输入的数字位数不对!"); return false;} var a = num.match(re); if (a != null) { if (len==15) { var D = new Date("19"+a[3]+"/"+a[4]+"/"+a[5]); var B = D.getYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5]; } else { var D = new Date(a[3]+"/"+a[4]+"/"+a[5]);

var B = D.getFullYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5]; } if (!B) {alert("输入的身份证号 "+ a[0] +" 里出生日期不对!"); return false;} } return true; }

//校验是否全由数字组成 function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true }

//校验登录名:只能输入 5-20 个以字母开头、可带数字、“_”、“.”的字串 function isRegisterUserName(s) { var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/; if (!patrn.exec(s)) return false return true }

//校验用户姓名:只能输入 1-30 个以字母开头的字串 function isTrueName(s) { var patrn=/^[a-zA-Z]{1,30}$/; if (!patrn.exec(s)) return false return true }

//校验密码:只能输入 6-20 个字母、数字、下划线 function isPasswd(s) { var patrn=/^(\w){6,20}$/; if (!patrn.exec(s)) return false return true }

//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-” function isTel(s) { //var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; if (!patrn.exec(s)) return false

return true }

//校验手机号码:必须以数字开头,除数字外,可含有“-” function isMobil(s) { var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; if (!patrn.exec(s)) return false return true }

//校验邮政编码 function isPostalCode(s) { //var patrn=/^[a-zA-Z0-9]{3,12}$/; var patrn=/^[a-zA-Z0-9 ]{3,12}$/; if (!patrn.exec(s)) return false return true }

//校验搜索关键字 function isSearch(s) { var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;\'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;\'\,.<>?]{0,1 9}$/; if (!patrn.exec(s)) return false return true }

function isIP(s) //by zergling { var patrn=/^[0-9.]{1,20}$/; if (!patrn.exec(s)) return false return true }

//取出字符串前后的空格 var strString = " aaaaa ";

strString = strString.replace(/(^[\s]*)|([\s]*$)/g, "");

在使用 RegularExpressionValidator 验证控件时常用的验证功能及其验证表达式介绍如下:

只能输入数字:"^[0-9]*$"

只能输入 n 位的数字:"^\d{n}$"

只能输入至少 n 位的数字:"^\d{n,}$"

只能输入 m ~ n 位的数字:"^\d{m,n}$"

只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"

只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"

只能输入有 1~3 位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"

只能输入非零的正整数:"^\+?[1-9][0-9]*$"

只能输入非零的负整数:"^\-[1-9][0-9]*$"

只能输入长度位 3 的字符:"^.{3}$"

只能输入由 26 个英文字母组成的字符串:"^[A-Za-z]+$"

只能输入由 26 个大写英文字母组成的字符串:"^[A-Z]+$"

只能输入由 26 个小写英文字母组成的字符串:"^[a-z]+$"

只能输入由数字和 26 个英文字母组成的字符串:"^[A-Za-z0-9]+$"

只能输入由数字、26 个英文字母或者下划线组成的字符串:"^\w+$"

验证用户密码: "^[a-zA-Z]\w{5,17}$" 正确格式位:以字母开头,长度在 6~18 之间,只能包含字符、 数字和下划线

验证是否含有 ^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"

只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"

验证 Email 地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"

验证 InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?$"

固定电话+手机号码正则表达式
2011-01-13 11:35 区 号 +座 机 号 码 +分 机 号 码 : regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$" 手 机 (中 国 移 动 手 机 号 码 ): regexp="^((\(\d{3}\))|(\d{3}\-))?13[456789]\d{8}|15[89]\d{8}" 所 有 手 机 号 码 : regexp="^((\(\d{3}\))|(\d{3}\-))?13[0-9]\d{8}|15[89]\d{8}"( 新 添 加 了 158,159 两个号段) ((\d{11})| ^((\d{7,8})|(\d{4}| \d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{ 7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$) 匹配格式: 11位 手 机 号 码 3-4位 区 号 , 7-8位 直 播 号 码 , 1- 4位 分 机 号 如 : 12345678901、 1234-12345678-1234

1.



































onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF 00-\uFFFF]/g,''))" 2. 用 正 则 表 达 式 限 制 只 能 输 入 数 字 : onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/ g,''))" 3. 用 正 则 表 达 式 限 制 只 能 输 入 数 字 和 英 文 : onkeyup="value=value.replace(/[\W ]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/ g,''))" 4.计 算 字 符 串 的 长 度 ( 一 个 双 字 节 字 符 长 度 计 2, ASCII 字 符 计 1) String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} 5.javascript 中 没 有 像 vbs cript 那 样 的 trim 函 数 , 我 们 就 可 以 利 用 这 个 表 达 式 来 实 现 , 如 下 : String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); } 利 用 正 则 表 达 式 分 解 和 转 换 IP 地 址 : 6.下 面 是 利 用 正 则 表 达 式 匹 配 IP 地 址 , 并 将 IP 地 址 转 换 成 对 应 数 值 的 Javascript 程 序 : function IP2V(ip) { re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹 配 IP 地 址 的 正 则 表 达 式 if(re.test(ip)) { return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4 *1 } else {

throw new Error("不 是 一 个 正 确 的 IP 地 址 ! ") } } 不 过 上 面 的 程 序 如 果 不 用 正 则 表 达 式 , 而 直 接 用 split 函 数 来 分 解 可 能 更 简 单 , 程 序 如 下 : var ip="10.100.20.168" ip=ip.split(".") alert("IP 值 是 : "+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1)) 正 则 表 达 式 用 于 字 符 串 处 理 、表 单 验 证 等 场 合 ,实 用 高 效 。现 将 一 些 常 用 的 表 达 式 收 集 于 此 , 以备不时之需。 匹 配 中 文 字 符 的 正 则 表 达 式 : [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹 配 双 字 节 字 符 (包 括 汉 字 在 内 ): [^\x00-\xff] 评 注 : 可 以 用 来 计 算 字 符 串 的 长 度 ( 一 个 双 字 节 字 符 长 度 计 2, ASCII 字 符 计 1) 匹 配 空 白 行 的 正 则 表 达 式 : \n\s*\r 评注:可以用来删除空白行 匹 配 HTML 标 记 的 正 则 表 达 式 : <(\S*?)[^>]*>.*?</\1>|<.*? /> 评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能 为力 匹 配 首 尾 空 白 字 符 的 正 则 表 达 式 : ^\s*|\s*$ 评 注 : 可 以 用 来 删 除 行 首 行 尾 的 空 白 字 符 ( 包 括 空 格 、 制 表 符 、 换 页 符 等 等 ), 非 常 有 用 的 表 达式 匹 配 Email 地 址 的 正 则 表 达 式 : \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 评注:表单验证时很实用 匹 配 网 址 URL 的 正 则 表 达 式 : [a-zA-z]+://[^\s]* 评注:网上流传的版本功能很有限,上面这个基本可以满足需求 匹 配 帐 号 是 否 合 法 ( 字 母 开 头 , 允 许 5-16 字 节 , 允 许 字 母 数 字 下 划 线 ) : ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 评注:表单验证时很实用 匹 配 国 内 电 话 号 码 : \d{3}-\d{8}|\d{4}-\d{7} 评 注 : 匹 配 形 式 如 0511-4405222 或 021-87888822 匹 配 腾 讯 QQ 号 : [1-9][0-9]{4,} 评 注 : 腾 讯 QQ 号 从 10000开 始 匹 配 中 国 邮 政 编 码 : [1-9]\d{5}(?! \d) 评 注 : 中 国 邮 政 编 码 为 6位 数 字 匹 配 身 份 证 : \d{15}|\d{18} 评 注 : 中 国 的 身 份 证 为 15位 或 18位 匹 配 ip 地 址 : \d+\.\d+\.\d+\.\d+ 评 注 : 提 取 ip 地 址 时 有 用 匹配特定数字: ^[1-9]\d*$ //匹 配 正 整 数 ^-[1-9]\d*$ //匹 配 负 整 数 ^-?[1-9]\d*$ //匹 配 整 数 ^[1-9]\d*|0$ //匹 配 非 负 整 数 ( 正 整 数 + 0) ^-[1-9]\d*|0$ //匹 配 非 正 整 数 ( 负 整 数 + 0)

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ //匹 配 正 浮 点 数 ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ //匹 配 负 浮 点 数 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ //匹 配 浮 点 数 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ //匹 配 非 负 浮 点 数 ( 正 浮 点 数 + 0) ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ //匹 配 非 正 浮 点 数 ( 负 浮 点 数 + 0) 评注:处理大量数据时有用,具体应用时注意修正 匹配特定字符串: ^[A-Za-z]+$ //匹 配 由 26个 英 文 字 母 组 成 的 字 符 串 ^[A-Z]+$ //匹 配 由 26个 英 文 字 母 的 大 写 组 成 的 字 符 串 ^[a-z]+$ //匹 配 由 26个 英 文 字 母 的 小 写 组 成 的 字 符 串 ^[A-Za-z0-9]+$ //匹 配 由 数 字 和 26个 英 文 字 母 组 成 的 字 符 串 ^\w+$ //匹 配 由 数 字 、 26个 英 文 字 母 或 者 下 划 线 组 成 的 字 符 串 评注:最基本也是最常用的一些表达式 匹 配 中 文 字 符 的 正 则 表 达 式 : [\u4e00-\u9fa5] 匹 配 双 字 节 字 符 (包 括 汉 字 在 内 ): [^\x00-\xff] 匹 配 空 行 的 正 则 表 达 式 : \n[\s| ]*\r 匹 配 HTML 标 记 的 正 则 表 达 式 : /<(.*)>.*<\/\1>|<(.*) \/>/ 匹 配 首 尾 空 格 的 正 则 表 达 式 : (^\s*)|(\s*$) 匹 配 Email 地 址 的 正 则 表 达 式 : \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 匹 配 网 址 URL 的 正 则 表 达 式 : http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)? ^\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-]+)+$ "^\d+$" //非 负 整 数 ( 正 整 数 + 0) //正 整 数 //非 正 整 数 ( 负 整 数 + 0) //负 整 数

"^[0-9]*[1-9][0-9]*$" "^((-\d+)|(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]+$" "^[A-Z]+$" "^[a-z]+$" //浮 点 数

//负 浮 点

//由 26个 英 文 字 母 组 成 的 字 符 串 //由 26个 英 文 字 母 的 大 写 组 成 的 字 符 串 //由 26个 英 文 字 母 的 小 写 组 成 的 字 符 串 //由 数 字 和 26个 英 文 字 母 组 成 的 字 符 串

"^[A-Za-z0-9]+$" "^\w+$"

//由 数 字 、 26个 英 文 字 母 或 者 下 划 线 组 成 的 字 符 串 //email 地 址 //url

"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"

"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$" /^13\d{9}$/gi 手 机 号 正 则 表 达 式 public static bool IsValidMobileNo(string MobileNo) {

const string regPattern = @"^(130|131|132|133|134|135|136|137|138|139)\d{8}$"; return Regex.Is Match(MobileNo, regPattern); } 正 则 表 达 式 --验 证 手 机 号 码 :13[0-9]{9} 实 现 手 机 号 前 带 86或 是 +86的 情 况 :^((\+86)|(86))?(13)\d{9}$ 电 话 号 码 与 手 机 号 码 同 时 验 证 :(^(\d{3,4}-)?\d{7,8})$|(13[0-9]{9}) 提 取 信 息 中 的 网 络 链 接 :(h| H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)? 提 取 信 息 中 的 邮 件 地 址 :\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 提 取 信 息 中 的 图 片 链 接 :(s| S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)? 提 取 信 息 中 的 IP 地 址 :(\d+)\.(\d+)\.(\d+)\.(\d+) 提 取 信 息 中 的 中 国 手 机 号 码 :(86)*0*13\d{9} 提 取 信 息 中 的 中 国 固 定 电 话 号 码 :(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8} 提 取 信 息 中 的 中 国 电 话 号 码 ( 包 括 移 动 和 固 定 电 话 ) :(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14} 提 取 信 息 中 的 中 国 邮 政 编 码 :[1-9]{1}(\d+){5} 提 取 信 息 中 的 中 国 身 份 证 号 码 :\d{18}|\d{15} 提 取 信 息 中 的 整 数 : \d+ 提 取 信 息 中 的 浮 点 数 ( 即 小 数 ) (-?\d*)\.?\d+ : 提 取 信 息 中 的 任 何 数 字 : (-?\d*)(\.\d+)? 提 取 信 息 中 的 中 文 字 符 串 : [\u4e00-\u9fa5]* 提 取 信 息 中 的 双 字 节 字 符 串 (汉 字 ): [^\x00-\xff]*




友情链接: 经济学资料 医学资料 管理学 大学文学资料 大学哲学