草庐IT

Preg_Match

全部标签

sql - Hive Query : Trying to string match using WHERE, LIKE on map<string, string>

我是Hive的新手,正在尝试进行类似于以下内容的搜索:SELECT*FROMtable1WHEREcol1LIKE"%abcd%";但是,当我这样做时,出现以下错误:Errorwhilecompilingstatement:FAILED:SemanticException[Error10014]:Line1:30Wrongarguments'"%abcd%"':Nomatchingmethodforclassorg.apache.hadoop.hive.ql.udf.UDFLikewith(map,string).Possiblechoices:FUNC(string,string)看

php - preg_match_all() 如何处理字符串?

我仍然在学习很多关于PHP的知识,字符串更改是我感兴趣的东西。我之前使用过preg_match来验证电子邮件地址或只是搜索查询。我刚从这篇文章中来What'swronginmyregularexpression?并且很好奇为什么preg_match_all函数会产生2个字符串,其中1个带有一些字符被剥离,另一个带有所需的输出。根据我对函数的理解,它使用RegEx逐个字符地遍历字符串,以评估如何处理它。这个正则表达式的结构是否可以绕过第一个数组条目并只产生所需的结果?这样你就不必去其他线程了$str='text^name1^Jony~text^secondname1^Smith~text

php - 警告 : preg_match() [function. preg-match]:编译失败:在偏移处没有可重复的内容

我正在尝试将preg_match检查从url检查更改为用户名检查,这是可接受的最小/最大2-16chrs、破折号、空格和连字符。我收到这个错误Warning:preg_match()[function.preg-match]:Compilationfailed:nothingtorepeatatoffset14if(empty($string)||preg_match("#^([\w-]{2,16}*(?:.[\w-]{2,16}*)+):?(d+)?/?#i",$string))寻找URL的旧代码if(empty($string)||preg_match("#^(http|https

php - preg_match : ensure the start and the end contains something

我想要一个正则表达式来确保字符串的开头包含“http://”和“/”以及结尾。这是我想出的一个更长的版本,if(!preg_match("/(^http:\/\//",$site_http)){$error=true;echo'';}elseif(!preg_match("/\/$/",$site_http)){$error=true;echo'';}但我认为这两个表达式可以像下面这样放在一起,但它行不通,if(!preg_match("/(^http:\/\/)&(\/$)/",$site_http)){$error=true;echo'';}我尝试组合的多个表达式一定是错误的!有什

php - 使用 preg_replace 替换空段落,无法识别空格

我需要改变这个:进入这个:在一个字符串上。看起来很简单,但以下内容不起作用:$filecontent=preg_replace('/ /','',$filecontent);$filecontent=preg_replace('/^ /','',$filecontent);$filecontent=preg_replace('/\s/','',$filecontent);$filecontent=preg_replace('/\s+/','',$filecontent);$filecontent=str_replace('','',$filecontent);为了确保我不会发疯,我对x

php - preg_replace 西里尔字符

我想用null替换这些字符[^a-zа-з0-9_],但是当它是多字节字符串时我不能这样做。我尝试使用mb_*、iconv、PCRE、mb_eregi_replace和u修饰符(用于PCRE),但没有一个效果很好。mb_eregi_replace有效,但它只输出正确的utf8字符串,但它不会替换字符,当preg_replace使用相同的正则表达式时..这是我的代码,适用于unicode,但它不会替换文本。function_data($data){mb_regex_encoding('UTF-8');returnmb_eregi_replace('/[^a-zа-з0-9_]+/',''

PHP 5.2 preg_match() 编译失败

非常感谢一些帮助。我的主机服务器端更新导致我的评论表单抛出两个验证错误。第一个是:preg_match()返回警告:preg_match()[function.preg-match]:编译失败:[脚本位置和行错误]中偏移量13处字符类中的范围乱序-第二个是主题检查偏移量14。它在电子邮件地址检查中执行此操作:if(preg_match('/[^a-zA-Z0-9_-.]/',$_POST['txtEmail']))和主题检查:if(preg_match('/[^a-zA-Z0-9:?-.]/',$_POST['txtSubject']))我不熟悉PHP,但可以剪切和粘贴!我的网站是fr

php - preg_match 查找并替换字符串模式

我有一个wordpress数据库,其中有一些来自soundcloud的嵌入式iframe。我希望将iframe替换为某种简码。我什至创建了一个简码,效果非常好。问题是我有一个旧数据库,其中包含大约2000个已经嵌入代码的帖子。我想做的是编写一个代码,以便用短代码替换iframe。这是我用来从内容中查找url的代码,但它总是返回空白。$string='ThinkKavinskymeetsFuturecop!meetsyourfavorite80sTVshowthemesongandyoumightbeprettyclosetoSwedishproducerJohanBengtsson\'

php - 在数组上使用 preg_replace

我有一个相对较大的元素数组,我想搜索一个字符串并替换所有匹配项。我目前正在尝试使用preg_replace和正则表达式来做到这一点:preg_replace("/\d?\dIPT\.\w/","IPT",$array);我想获取所有匹配00IPT.A或0IPT.A的值(0代表任何数字字符,A代表任何字母)并将它们替换为IPT。但是,我收到了数组到字符串的转换通知。有没有办法让preg_replace接受数组数据源?如果没有,是否有任何其他方法可以实现此目的?文档说preg_replace应该能够接受数组源——这就是我要问的原因。Thestringoranarraywithstrings

PHP preg_split utf8 字符

preg拆分和utf有问题。这是代码:$original['words']=preg_split("/[\s]+/",$original['text']);print_r($original);这是答案:Array([text]=>Šiosbaterijoskaista[words]=>Array([0]=>�[1]=>ios[2]=>baterijos[3]=>kaista此代码在CakePHP框架中运行。请注意[text]在单词之前正确显示并且在拆分过程中困惑。顺便说一句,我试过使用这些:mb_internal_encoding('UTF-8');mb_regex_encoding