作用:对字符串操作函数的汇总 操作行为:是否包含 长度 取左子串 取右子串 取子串 转小写 转大写 仅数字 仅字母 仅小写 仅大写 拆分 例子:
Func StringDemo() ;1、判断字符串中有无包含某个子串,如果包含,返回子串包含的位置,否则返回0 local $str1 = "我是一个字符串" if J_String($str1,'是否包含','字符') > 0 then J_MsgBox('包含子串') endif ;2、取字符串长度 local $len = J_String($str1,'长度') J_MsgBox("长度:"&$len) ;3、从左边取子串:从左边第一个字符开始,参数值为要取的字符串长度 local $subStr1 = J_String($str1,'取左子串','2') J_MsgBox($subStr1);我是 ;4、从右边取子串:从最后一个字符开始,参数值为要取的字符串长度 local $subStr2 = J_String($str1,'取右子串','3') J_MsgBox($subStr2); ;5、取子串:参数值需要有提供2个数据,以英文逗号割开:开始位置,截取子串长度 ;将其中的“一个”提取出来,从第3个字符开始取,取2个字符 local $subStr3 = J_String($str1,'取子串','3,2') J_MsgBox($subStr3) ;6、转化 local $str2 = "Hello" ;转成小写 local $subStr4 = J_String($str2,'转小写','') J_MsgBox($subStr4);hello ;转成大写 local $subStr5 = J_String($str2,'转大写','') J_MsgBox($subStr5);HELLO ;7、判断 ;是否纯数字 local $str3="1234" if J_String($str3,'仅数字','') = 1 then J_MsgBox('字符串是纯数字') endif ;是否纯平字母a到z,A到Z local $str4="abcADK" if J_String($str4,'仅字母') = 1 then J_MsgBox('字符串是纯字母') endif ;字母串中是否仅包括:小写字母 a到z local $str6='abcd' if J_String($str6,'仅小写') = 1 then J_MsgBox('字符串中全是小写字母') endif ;字母串中是否仅包括:大写字母 A到Z local $str6='CDFEF' if J_String($str6,'仅大写') = 1 then J_MsgBox('字符串中全是大写字母') endif ;8、拆分:返回值是数组,数组第一个元素值为子串的数量 local $str7 = "123,456,788" local $array = J_String($str7,'拆分',',') ;拆分成几个串了 local $len = $array[0] ;其它元素 for $i = 1 to UBound($array) -1 J_LOG('元素:'&$array[$i]) next EndFunc ;==>作用:将一个字符串中的一段文本替换成其他文本 返回值:替换后的字符串 例子:
Func Example34() Local $text = "1122333" ;将文本$text中的文本22替换成文本8888 Local $new_text = J_StringReplace($text, "22", "8888") J_MsgBox($new_text) EndFunc ;==>Example34作用:返回满足此正则表达式匹配的个数 返回值:返回满足此正则表达式匹配的个数 例子:
Func Example35() ;声明一个名为$string的局域变量,保存文本 "hello1234hi4567good7890" Local $string = "hello1234hi4567good7890" ;方法1,优点,速度快,一般用于批量提取 ;声明一个名为$open的局域变量,保存从文本$string中提取满足正则表达式的数据集合 Local $open = J_EXP_Open($string, "\d+") ;声明一个名为$max的局域变量,保存$open数据集合中的数据个数 Local $max = J_EXP_MaxCount($open, "\d+") ;创建一个循环,从1开始遍历这个集合 For $i = 1 To $max Step 1 ;声明一个名为$sub_string的局域变量,保存逐个取出集合open中的数据 Local $sub_string = J_EXP($open, "\d+", $i) ;通过系统提示框的形式显示出$sub_string里装载的数据 J_MsgBox($sub_string, $i) Next ;方法2,优点,简单,一般用于单条提取 ;声明一个名为$sub_string2的局域变量,保存文本$string中满足正则表达式\d+的第6个数据 Local $sub_string2 = J_EXP($string, "\d+", 6) J_MsgBox($sub_string2) ;用于判断是否满足正则表达式,第三个参数(位置)必须为0 Local $result = J_EXP($string, "\w+\d+", 0) If $result = 1 Then J_MsgBox("满足正则表达式\w+\d+") Else J_MsgBox("不满足正则表达式\w+\d+") EndIf EndFunc ;==>Example35作用1:通过正则表达式获得指定的文本 作用2:当位置=0的时候返回值为1或者0代表是否符合此正则表达式 例子:
Func Example35() ;声明一个名为$string的局域变量,保存文本 "hello1234hi4567good7890" Local $string = "hello1234hi4567good7890" ;方法1,优点,速度快,一般用于批量提取 ;声明一个名为$open的局域变量,保存从文本$string中提取满足正则表达式的数据集合 Local $open = J_EXP_Open($string, "\d+") ;声明一个名为$max的局域变量,保存$open数据集合中的数据个数 Local $max = J_EXP_MaxCount($open, "\d+") ;创建一个循环,从1开始遍历这个集合 For $i = 1 To $max Step 1 ;声明一个名为$sub_string的局域变量,保存逐个取出集合open中的数据 Local $sub_string = J_EXP($open, "\d+", $i) ;通过系统提示框的形式显示出$sub_string里装载的数据 J_MsgBox($sub_string, $i) Next ;方法2,优点,简单,一般用于单条提取 ;声明一个名为$sub_string2的局域变量,保存文本$string中满足正则表达式\d+的第6个数据 Local $sub_string2 = J_EXP($string, "\d+", 6) J_MsgBox($sub_string2) ;用于判断是否满足正则表达式,第三个参数(位置)必须为0 Local $result = J_EXP($string, "\w+\d+", 0) If $result = 1 Then J_MsgBox("满足正则表达式\w+\d+") Else J_MsgBox("不满足正则表达式\w+\d+") EndIf EndFunc ;==>Example35正则表达式语法: 语法: \d匹配一个数字 \D匹配非数字 \s 匹配一个空格 \S匹配非空格 \w匹配字母、数字及下划线 \W匹配非字母、非数字、非下划线 \n匹配换行 .匹配除了换行之外的任何东西 {10}匹配10次 表示重复0到若干次 +表示重复1到若干次 ?表示匹配的有可能不出现 .?匹配任何数据啥玩意都行,不能换行 .+?尽可能少匹配数据,至少出现一次 匹配任何英文符号,符号前都要加”\” [abc] 匹配abc随便哪一个字母 [^abc] 匹配除abc随便哪一个字母 (想要的数据) 抓取想要的数据用括号括起来 (?:exp)分组不抓取
作用:用于加密一段文本. 模式:加密/解密 返回值:加密/解密后的文本 例子:
Func Example41() Local $string = "hello123456" Local $screct1 = J_Screct($string, "加密") J_MsgBox($screct1) Local $screct2 = J_Screct($screct1, "解密") J_MsgBox($screct2) EndFunc ;==>Example41本文转自码栈平台
