如何使用 MySQL 正则表达式精确匹配含有日文假名的字段?

如何使用 MySQL 正则表达式精确匹配含有日文假名的字段?

使用 mysql 正则表达式查询含有日文假名的字段

对于查询含有日文平假名和片假名的字段,常规的 regexp 匹配可能不理想。以下是如何使用自定义函数进行准确查询:

`

<br>create definer=wq19bar@% function jp_char_inside(s text) returns int(11)<br>begin</p><pre class="brush:php;toolbar:false">declare h text; declare p integer; declare l integer; declare head text; declare utf_8 text; set h = hex(s); set p = 1; set l = length(h); while p <= l do     set head = substr(h, p, 1);     if head < '8' then         set p = p + 2;     else         set utf_8 = substr(h, p, 6);         if (utf_8 >= 'E38181' and utf_8 <= 'E3829E') then             return 1;         end if;         if (utf_8 >= 'E382A1' and utf_8 <= 'E383BE') then             return 1;         end if;         set p = p + 6;     end if; end while;

return 0;
end
`

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享