replace函数

replace()二参为函数时

天涯浪子 提交于 2019-12-10 02:49:55
关于js replace 第二个参数是函数时,函数参数解析 function formateString ( str , obj ) { return str . replace ( /\{#(\w+)#\}/g , function ( match , key , index , source ) { console . log ( arguments ) ; //{#content#} content 5 <div>{#content#}</div> return obj [ key ] ; //"<div>helloWorld</div>" } ) } var string = '<div>{#content#}</div>' ; formateString ( string , { content : 'helloWorld' } ) ; match 是匹配到字符串 示例中 为 {#content#} key 是捕获分组中内容(无分组时不存在),正则表达式中小括号内的内容为一个分组,所以示例中为content index 是字符串的下标也就是示例中 { 的下标即 5 source 是原字符串 示例中为 <div>{#content#}</div> var str = "a1ba2b" ; var reg = /a.b/g ; str = str . replace (

Python爬虫数据处理

≯℡__Kan透↙ 提交于 2019-12-10 02:34:06
一、首先理解下面几个函数 设置变量 length()函数 char_length() replace() 函数 max() 函数 1.1、设置变量 set @变量名=值 set @address='中国-山东省-聊城市-莘县'; select @address 1.2 、length()函数 char_length()函数区别 select length('a') ,char_length('a') ,length('中') ,char_length('中') 1.3、 replace() 函数 和length()函数组合 set @address='中国-山东省-聊城市-莘县'; select @address ,replace(@address,'-','') as address_1 ,length(@address) as len_add1 ,length(replace(@address,'-','')) as len_add2 ,length(@address)-length(replace(@address,'-','')) as _count etl清洗字段时候有明显分割符的如何确定新的数据表增加几个分割出的字段 计算出com_industry中最多有几个 - 符 以便确定增加几个字段 最大值+1 为可以拆分成的字段数 此表为3 因此可以拆分出4个行业字段

php 重要工具函数

Deadly 提交于 2019-12-05 23:09:50
1. 字符串分隔函数 : 把src按 #分隔后放入数组 array中。 $Array = explode('#',$src); 2. 计算数组长度 count $len= count($Array); 遍历数组 for ($i=0; $i<$count; $i++) { echo Array[$i]; } 3. 创建数组函数 array(); $Myarray = array(); 4. xml 模板函数, function get_xml_str($act,$msg){ if(!$msg){ $result=0; $msg='success'; }else{ $result=$msg; $msg='error'; } $xml_str='<?xml version="1.0" encoding="UTF-8" ?>'; $xml_str.="<XXXX>"; $xml_str.="<action>$act</action>"; $xml_str.="<result>$result</result>"; $xml_str.="<msg>$msg</msg>"; $xml_str.="</XXXX>"; return $xml_str; } 5.获取IP <? function GetIP() { if ($_SERVER["HTTP_X_FORWARDED_FOR"]) $ip =

Freemarker在replace替换是对NULL值的处理

与世无争的帅哥 提交于 2019-12-05 14:50:23
   freemarker的对象调用内建函数时,比如userInfo对象的birthDay函数,页面${userInfo.birthDay}调用,当我想将birthDay值中的“-”替换为“/”时,${userInfo.birthDay?replace("-", "/")}当birthDay有值时可以实现,当birthDay为null时就会报错。   替换处理null值时可以这样处理: ${(userInfo.birthDay?replace('-', '/'))!} //通过 ! 来压制报错信息.       亲测可用! 来源: https://www.cnblogs.com/Maoscn/p/11929227.html

php Deprecated 解决办法

两盒软妹~` 提交于 2019-12-05 08:49:26
这个问题是因为php版本过高。 在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用。有两个方案可以解决以上问题: 1、把php版本换到v5.3下。 2、继续使用v5.3,修改php.ini文件 ;extension=php_mbstring.dll 改为 extension=php_mbstring.dll ;mbstring.func_overload = 0 修改为: mbstring.func_overload = 7 或者使用其他的函数: define('DEDEADMIN', ereg_replace("[/\\]{1,}", '/', dirname(__FILE__) ) ); //改为 define('DEDEADMIN', preg_replace("/[\/\\\\]{1,}/", '/', dirname(__FILE__) ) ); 注:因为preg_replace比ereg_replace的执行速度快,PHP推荐使用preg_replace. 来源: oschina 链接: https://my.oschina.net/u/1780998/blog/335468

安装dedeCMS出现Deprecated: Function ereg_replace() ...

孤街醉人 提交于 2019-12-05 08:49:13
问题原因: 网站刚更换了服务器,php以前用的isapi模式,现在用的php 5.3.6.0的Fast CGI模式。 网上查了下,在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用,这里的这个错误原因就是函数ereg_replace在 PHP5.3 中已经不建议使用了。 下述是不建议使用的Function (POSIX), 与建议替换成的Function (PCRE) 列表, 详可见: PHP: Differences from POSIX regex * POSIX → PCRE * ereg_replace() → preg_replace() * ereg() → preg_match() * eregi_replace() → preg_replace() * eregi() → preg_match() * split() → preg_split() * spliti() → preg_split() * sql_regcase() → No equivalent 解决方法: 方法一: 把php版本换到v5.3下 方法二: 继续使用v5.3,修改php.ini文件 ;extension=php_mbstring.dll 改为 extension=php_mbstring.dll ;mbstring.func_overload = 0

js中replace()方法使用注意

家住魔仙堡 提交于 2019-12-04 15:49:33
1.如果正则表达式中设置了 修饰符g ,那么源字符串中所有与模式匹配的子串都将替换成第二个参数指定的字符串;如果不带修饰符g,则只替换所有匹配的第一个子串。 2.replace()的 第一个参数若是字符串 而不是正则表达式,则replace()将直接搜索这个字符串 eg. text.replace(/javascript/gi,"JavaScript"); // 将所有不区分大小写的javascript都替换成JavaScript 3.正则表达式中使用 圆括号括起来的子表达式是带有从左到右的索引编号的 ,而且正则表达式会记忆与每个子表达式匹配的文本,如果在 替换字符串中出现了$加数字 ,那么replace()将用与指定的子表达式相匹配的文本来替换这两个字符。 eg. var quote = /"([^"]*)"/g; //一段用双引号括起来的文本,且中间内容区域不能包含引号 text.replace(quote,'“$1”'); //用中文引号替换英文引号,同时保持引号之间的内容(存储在$1中)没有被修改 4.replace()方法的 第二个参数可以是函数 eg. //使用函数动态生成的字符串_attr来替换 text.replace(正则表达式1,function(word){ var _attr=word.replace(正则表达式2,替换的字符串); return _attr

常用的PHP字符串操作函数

瘦欲@ 提交于 2019-12-03 08:04:36
1.strlen 但是要注意!如果字符串中是汉字等其他字符时候呢? $str = "我"; echo strlen($str); //一个汉字,在UTF8格式下,显示3, ANSI格式下显示2 这样一来,不符合人的自然感觉,于是,有个升级版的函数 2. mb_strlen 1 $str = "我"; 2 echo mb_strlen($str,'utf-8'); //1 要加上第二个参数才行,对待\n等转义字符上同strlen一样,视同一个字符 3. strpos 查找 字符串$needle 在 字符串$haystack 中 首次 出现的位置 stripos和strpos类似,区别是stripos不区分大小写 strrpos和strpos类似,区别是strrpos是找 最后一次 出现的位置 strripos和strrpos类似,区别是它不区分大小写 a needle in a haystack 草垛里的针,needle是针,haystack草垛。就是在草垛里找缝衣针的意思。 mixed strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) 所以,了解英语意思的话,很容易知道怎么去用。查找返回int类型位置,如果没找到返回bool值false 注意几点: 3.1.位置是从0开始的 //位置是从0开始的,a在

replace函数参数

前提是你 提交于 2019-12-02 18:16:50
var str = "abcd-abcd-1234" ; var result = str.replace(/([a-z]*)-([a-z]*)/gi, function (match,p1,p2,offset,str){ console.log(match); //abcd-abcd 匹配的内容 console.log(p1); //第一个括号中匹配的内容 console.log(p2); //第二个括号匹配的内容 console.log(offset); //0 匹配到的字符串的索引(偏移量) console.log(str); //原始字符串 return [p1,p2].join( "+" ); }); console.log(result); 来源: https://www.cnblogs.com/vicky24k/p/11757187.html

数据分析-pandas

一曲冷凌霜 提交于 2019-12-01 17:36:21
数据分析库pandas之Series: replace函数及map函数, Dataframe库只能使用replace函数(且不支持method和limit参数),不支持map函数。 来源: https://www.cnblogs.com/zhuyafeng/p/11696007.html