码栈开发手册(四)---编码方式开发(字符串处理相关函数)

    xiaoxiao2026-02-26  7

    6.1 J_String(总字符串,操作行为,参数值)

    作用:对字符串操作函数的汇总  操作行为:是否包含 长度 取左子串 取右子串 取子串 转小写 转大写 仅数字 仅字母 仅小写 仅大写 拆分 例子:

    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 ;==>

    6.2 J_StringReplace(总字符串,目标字符串,替换成的字符串)

    作用:将一个字符串中的一段文本替换成其他文本 返回值:替换后的字符串 例子:

    Func Example34() Local $text = "1122333" ;将文本$text中的文本22替换成文本8888 Local $new_text = J_StringReplace($text, "22", "8888") J_MsgBox($new_text) EndFunc ;==>Example34

    6.3 J_EXP_MaxCount(总字符串,正则表达式)

    作用:返回满足此正则表达式匹配的个数 返回值:返回满足此正则表达式匹配的个数 例子:

    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

    6.4 J_EXP(总字符串,正则表达式,[位置:1])

    作用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)分组不抓取

    6.5 J_Screct(文本,[模式:加密])

    作用:用于加密一段文本. 模式:加密/解密 返回值:加密/解密后的文本 例子:

    Func Example41() Local $string = "hello123456" Local $screct1 = J_Screct($string, "加密") J_MsgBox($screct1) Local $screct2 = J_Screct($screct1, "解密") J_MsgBox($screct2) EndFunc ;==>Example41

    本文转自码栈平台

    最新回复(0)