【mysql正则表达式regexp使用详解】教程文章相关的互联网学习教程文章

如何在mysql查询中使用正则表达式【代码】

我在数据库中有以下条目:id summary 1 numbers of word 200 in the doc 0x123 2 [main] numbers of word 150 in the doc 0x678 3 numbers of word 678 in the doc 0x4536 4 this file has empty 5 not completed 6 numbers of word 86542 in the doc 0x6356 我想从数据库“页面”中检索id,并根据汇总值检索表名“详细信息”.我希望所有四个id(1,2,3,6)的摘要值“doc< any_number>中的...

正则表达式加入性能Mysql【代码】

我犹豫什么应该使用哪种类型.会有很多ID和组,通常他们学会了我做多个表,但第二个版本的regexp看起来很棒而且不那么多余.我很想知道那两个版本更好.+----+ +----+-------+ | ID | | ID | Group | +----+ +----+-------+ | 1 | | 1 | gr1 | | 1 | | 1 | gr2 | | 2 | | 2 | gr2 | | 2 | | 2 | gr3 | +----+ +----+-------+ SELECT * FROM tbl1 join tbl2 USING(ID) WHERE Group="gr1";+----+--------...

php – MySQL搜索正则表达式的一部分【代码】

我有一个MySql搜索,可以正常使用regexp.但它只找到完整的单词. 例如,如果我在文本中搜索苹果“我真的很喜欢苹果”它匹配.但如果我搜索苹果,我就没有结果. 这是我到目前为止所得到的:$search = (ini_get('magic_quotes_gpc')) ? stripslashes($_GET['q']) : $_GET['q']; $search = mysql_real_escape_string($search); $search = strtoupper(preg_replace('/\s+/', '|', trim($_GET['q'])));$regexp = "REGEXP '[[:<:]]($search)...

mysql – 使用正则表达式选择字段的一部分【代码】

我有一个表格,第三方组件存储网址,我想从这个网址只获取id参数. 使用PHP我可以这样做:$subject = "index.php?option=com_content&catid=2&id=456&view=article"; //mysql query result $pattern = '*[&?]id=([0-9]+)*'; //matches either ?id=456 or &id=456 preg_match($pattern, $subject, $matches); echo $matches[1];//prints 456匹配的数字将是新查询的一部分:SELECT name FROM table1 WHERE id=the_match现在,我认为通过m...

mysql – [a-z]和[A-Z]之前或之后的搜索项的正则表达式

有人能为我提供正则表达式以匹配[a-z]和[A-Z]之前或之后的搜索词吗? (其他字符都可以.)即,在搜索密钥时,我不想在搜索结果中使用键盘,而是键.没关系.解决方法:由于您没有指定正在使用的正则表达式引擎,我将假设一个基线,在这种情况下,“[^ A-Za-z] key [^ A-Za-z]”就足够了. 如果你还想在行的开头和结尾捕获字符串,你还必须使用“^ key [^ A-Aa-z]”和“[^ A-Aa-z] key $”.

mysql – 搜索查询的正则表达式,如:word1 *(word2 -word3 -word4)* word5

问题是,在字符串的具体部分中排除某些单词的单词序列搜索的正则表达式是什么? 例如,对于搜索请求: word1 *(word2 -word3 -word4)* word5 (其中*表示任意数量的单词,-word表示不包括单词) 匹配的字符串将是: word1 word99 word2 word98 word97 word5 word1 word2 word5 不匹配: word1 word99 word2 word98 WORD4 word97 word5 word1 WORD3 word2 word5 附:它是使用REGEXP运算符在MySQL中搜索的.解决方法:您将无法使用REGEXP执行...

php – 如何使用正则表达式完全匹配MySQL中的记录?【代码】

我正在制作一个使用独特slu to来识别文章的新闻系统.在创建新文章时,我需要确保该独特的slug尚未使用.因此,如果两篇文章具有完全相同的名称,则它们将生成完全相同的slug.我想在它正在使用的情况下在slug的末尾添加一个数字. 像这样: >一些非常有趣的文章>一些非常有趣的文章-1>一些非常有趣的文章-2 等等.因此,在我的测试用例中,我选择的数据库中的所有记录都与“一些非常有趣的文章”完全匹配,并带有0或更多“-number”.因此,在这...

有没有办法从MySQL中的列中提取与正则表达式匹配的文本?【代码】

例如,如果特定列中的所有条目都具有[a-z] [0-9]形式,那么如何只提取前导字母,以便asdf123和as3456分别返回’asdf’和’as’?解决方法:这与mysql正则表达式功能无关(除非安装一些似乎是为此而设计的udf).从技术上讲,由于[0-9]是一个有限的集合,你可以在LEAST中抛出10个LOCATE(注意& invalitdate 0),并使用SUBSTRING.不是很漂亮的照片:SET @var ='asjdasd35433'; SELECT SUBSTRING(@var,1,LEAST(IF(LOCATE(0,@var)=0,LENGTH(@var),...

php – MySQL正则表达式,用于在正文中使用双斜线查找内部URL【代码】

我们有一个使用wordpress的网站,我们发现在某些时候,一个糟糕的插件或用户错误在siteurl之后添加了两个斜杠(例如,http://example.site//category1/或http:// example. site / category1 // category2 /等 这似乎有效,但看起来效果不够.SELECT id, post_content FROM `wp_posts` where post_content regexp '(href="[^"]*[^:]\/\/[^"]*)' and post_status in('draft','publish') order by id asc有一个更好的方法吗?我不希望它在...

mysql – 带有“contains”子句的sql命令不支持正则表达式【代码】

我不是一个季节性的Windows用户,我得到了一个任务,我必须查询Window Index搜索表,即“Systemindex”,用于从db中获取一些用户特定数据. 为此,我必须在获取数据时将模式基本上与正则表达式匹配.SELECT System.FileName, System.ItemPathDisplay, System.DateCreated, System.DateModified, System.ItemName, System.KindText FROM Systemindex WHERE Contains('“(?=^[A-Za-z\d!@#\$%\^&\*\(\)_\+=]{9,32}$)”');以上将允许我们搜索所...

MySQL搜索优化(用子查询替换长正则表达式)【代码】

我有一个MySQL查询select query from HR_Health_Logs where query REGEXP 'CPU|MAC|PC|abacus|calculator|laptop|mainframe|microcomputer|minicomputer|machine';除了正则表达式更长,并包含许多同义词和拼写错误. 我需要缩短这个简短的内容,并有一个包含所有同义词和拼写错误的表格,以便我可以避免这个非常长的查询.所以我正在寻找类似的东西select query from HR_Health_Logs where query REGEXP '**HAVE A TABLE WITH ALL MY SY...

mysql – 在Group by Clause中使用正则表达式【代码】

我有一张桌子’物品’Item_Code |Rate |Quantity -------------------------------------- JOGGER-POWER-BLACK |699 |5 JOGGER-POWER-WHITE |599 |8 JOGGER-PLAZA-WHITE |1199 |2 SLEEPER-PLAZA-BLACK |699 |6 SLEEPER-POWER-BLACK |499 |5 我想分组Part1 – % – Item_Code的第3部分,如下所示,这只是想法select (part1 and part3 of Item_Code) as 'Category-Color',sum(Quantity) as ...

php – Mysql分组数据和正则表达式【代码】

我有一张表,在检查患者后由我们的提供者记录代码.代码看起来像A11,B99,C68,A12,O87,F76等.现在,我需要创建一个报告,将这些代码分组并计算在内.组应该看起来像A00-B99,C00-D48,D50-D89等.我已经研究过,发现我可能不得不使用REGEXP,我想尽量避免使用它.有人可以帮助什么是有效和优化的方式吗? 表:ID Codes description1 A11 Infection2 A01 Intestinal infectious diseases 3 H77 Intestinal infectious disea...

php – MySQL正则表达式取代?【代码】

我有一个blob文本字段的表.这个blob里面有很多html.其中一个html是h2.我想在h2标签中找到一个单词的所有实例,并将其替换为另一个单词(同时保留其他单词). 例如,我想用下面的“bumbles”替换h2“wiggles”: 之前:<h2>This is some wiggles html!</h2> <p>And here is some more wiggles html that could be ignored</p> <h2>And this is a decoy h2</h2>后:<h2>This is some bumbles html!</h2> <p>And here is some more wiggle...

正则表达式中的Mysql字段名称【代码】

我有下表Table bots{ip_address varchar(15),bot_name varchar(32) }鉴于某些机器人具有静态ips而其他机器人不具有静态ips,该表具有诸如192.168.0和192.168.1.15之类的条目. 现在我必须看看给定的ip是否属于机器人.我正在思考这些问题SELECT bot_name FROM bots WHERE __input_ip__ REGEXP '^ip_address'但这显然不会起作用,因为它正在寻找以ip_address开头的字符串. 所以我的问题是,如何在sql正则表达式中包含字段名称?解决方法...