正则表达式也匹配重音字符

2023-12-26

我有以下 PHP 代码:

$search = "foo bar que";
$search_string = str_replace(" ", "|", $search);

$text = "This is my foo text with qué and other accented characters.";
$text = preg_replace("/$search_string/i", "<b>$0</b>", $text);

echo $text;

显然,“que”与“qué”不匹配。我怎样才能改变这一点?有没有办法制作preg_replace忽略所有口音?

必须匹配的字符(西班牙语):

á,Á,é,É,í,Í,ó,Ó,ú,Ú,ñ,Ñ

我不想在应用正则表达式之前替换所有重音字符,因为文本中的字符应该保持不变:

“这是我的foo文本与qué以及其他带重音的字符。”

and not

“这是我的foo文本与que以及其他带重音的字符。”


我最终使用的解决方案:

$search_for_preg = str_ireplace(["e","a","o","i","u","n"],
                                ["[eé]","[aá]","[oó]","[ií]","[uú]","[nñ]"],
                                $search_string);

$text = preg_replace("/$search_for_preg/iu", "<b>$0</b>", $text)."\n";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式也匹配重音字符 的相关文章

  • Laravel 8 图像不显示

    我在用Laravel 8 试图显示来自storage app subject image 路径 但不显示 下面是我的代码blade img src asset subject image data gt subject image alt
  • 无法将外键值插入链接表

    我目前正在尝试将数据插入名为的表中 客户报价 该表充当 顾客 表和 客户关税 桌子 它还记录通过以下方式提交数据的用户 user table 这是我的数据库的架构 https i stack imgur com gyCdb png http
  • PHP如何计算时差? [复制]

    这个问题在这里已经有答案了 我必须计算日期时间差 如何在 PHP 中做到这一点 我需要准确的小时 分钟和秒 有人有这方面的脚本吗 Use the diff 方法 http www php net manual en datetime dif
  • 在 PHP cURL 中设置 FTP 模式

    我有一些代码使用 PHP cURL 库通过 FTP 上传一些文件 我被告知将 FTP 模式从被动切换为主动 但我找不到如何做到这一点 相关文档中似乎没有选项 我实际上不确定它当前使用的是什么模式 或者我如何查看它 这个问题的答案是使用 cu
  • 将结果从 pdo 发送到 ajax 时遇到问题

    我想做的是 如果用户成功注册 pdo 将提供信息并将其发送到 ajax 如果用户注册与否 ajax 将发送消息 在我将这个条件放入我的 pdo 中后 它工作正常 现在它不会再插入 并且 ajax 告诉 注册用户时出错 每时每刻 script
  • 我怎样才能完成笛卡尔积函数的 Objective-C 实现?

    作为我的问题的后续here https stackoverflow com questions 8176719 algorithm generating all combinations from items that must be ch
  • 使用 Poedit 创建 POT 文件

    我正在拼命地尝试为我的 php 新应用程序创建一个目录 in 1 我创建了一个文件 trans php 其中放置了所有要翻译的值 例如 这是我的文件 2 我打开Poedit 在 路径 中这是我输入的内容 见图 然后我保存文件 php 的相同
  • yii2:抛出新异常的正确方法

    只是为了测试 我在模型中添加了这段代码 同时设置 debug true 和 false if packagedays lt 1 throw new yii base Exception package days cannot be less
  • 如何获取wordpress中文件的本地路径

    由于在wordpress中 上传的文件 图像以3种不同的大小存储 从而占用内存 我有一个代码可以根据给定图像的 URL 来调整图像的大小 调整大小的代码是 img wp get image editor image url if is wp
  • 导出具有高质量图像的画布的最佳实践是什么?

    我需要你的帮助 我解释一下我的情况 我正在使用 Fabric js 库在我的应用程序中放置形状 文本等 我的画布尺寸为 1000x1000 像素 约 26 45x26 45 厘米 我有一个图像上传脚本 仅用于上传高质量图像 例如 300 d
  • JWT 中的注销不起作用

    我是 Laravel 的新手 我安装了 JWT 并登录 所以它工作并生成了一个令牌 当我在邮递员中注销时它返回 true 但一次又一次它返回 true 和 auth gt 用户 注销后始终返回用户 这是我的代码 public functio
  • 高级自定义字段 - WordPress

    在使用时自定义字段插件 我无法让它返回任何数据 我创建了一个名为的字段组book cover thumbnail其中有一篇文章链接到它 谁能明白为什么下面的代码不起作用 img src 我完全没有收到任何错误 没有空格 确保您 a 使用以下
  • PHP 中的基本 URL

    我有一个两难的困境 它已经困扰我很长一段时间了 我有一个本地测试服务器 其设置如下 127 0 0 1 我的网站在离线模式下如下所示 127 0 0 1 websitename index php 我的网站实时版本如下所示 websiten
  • 如何在 PHP 的 foreach 循环中获取两个项目? [复制]

    这个问题在这里已经有答案了 我有一个推荐轮播 轮播每次循环浏览两个项目 现在我想每次得到两个项目foreach环形 我怎么才能得到它 Code div div class row div class col md 6 div class s
  • rewrite_mod 已启用,但 .htaccess 不起作用

    我在 Amazon EC2 的 ubuntu 12 04 中使用 apache 2 2 我使用启用了 mod rewrite sudo a2enmod rewrite 并能够看到 apache2ctl M 现在我编写了以下 htaccess
  • 使用 PHP 上传、调整图像大小并裁剪图像中心

    我想要创建一个非常非常基本的上传 调整大小和裁剪 PHP 脚本 其功能与 Twitter 用于上传头像图片的方法相同 无论如何我最后检查过 我希望脚本拍摄任何尺寸的图像 将最短边的大小调整为 116 像素 然后裁剪顶部和底部 如果是横向 则
  • Laravel Eloquent with()-> 返回 null

    我正在尝试使用 Eloquent 来获取具有以下功能的特定产品 brand id映射到a的列brands表 该brand数组返回空 这里有什么明显需要改变的地方吗 product Product with images gt with br
  • 使用 htaccess 文件重定向[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 Edit 我想重定向一个网址 to www example com location sydney from www example com rss
  • std::regex 转义正则表达式中使用的特殊字符

    我是字符串来创建一个std regex FILE 作为单元测试的一部分 检查一些打印文件名的异常输出 在 Windows 上失败并显示 regex error error escape 表达式包含无效的转义字符或尾随转义 因为 FILE 宏
  • 如何使用多个分隔符拆分列表?

    基本上 我想在文本区域中输入文本 然后使用它们 例如 variable1 variable2 variable3 variable1 variable2 variable3 variable1 variable2 variable3 我知道

随机推荐

  • Java中的PUT请求[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我正在尝试用 Java 发送 PUT 请求 其中 header 和 body 为 json 格式 正文需要具有特定名称
  • 降低 Windows 上 multiprocessing.Pool 的进程优先级

    I use multiprocessing Pool 并行化一些繁重的 Pandas 处理 但发现它有点太成功了 我的 CPU 使用率达到 100 整个计算机变得非常无响应 就连鼠标也变得难以使用 我可以使用此代码更改进程的进程优先级 im
  • 在我的不和谐网络钩子中,我收到错误:{“embeds”:[“0”]}

    我正在制作一个不和谐的 webhook 来记录某些内容 我在模板的帮助下完成了它 我不擅长 php 但我不断收到错误 embeds 0 我已经尝试过研究它 但没有得到任何有用的信息 请注意我这样做是为了测试的混乱 这是我的代码
  • 无法在 Angular2 中设置未定义 ckeditor 的属性“dir”

    每当我尝试加载 Ckeditor 时 都会收到 无法设置未定义的属性 dir 我正在使用 angular cli 来开发我的 Angular2 应用程序 CKEditor版本 4 4 7 当我使用 ngserve 运行应用程序时 此问题不会
  • 使用 JAX-RS 进行文件上传

    我尝试将文件从 JavaScript 客户端上传到 JAX RS Java 服务器 我在我的服务器上使用以下 REST 上传功能 POST Produces application json UploadDto upload Context
  • 从字符串中删除所有出现的 \

    我正在尝试使用 JSON 从服务器获取对象数组 服务器向我发送以下字符串 DealComment null DealVotes DealId 1 CompanyId 1 StartDate 2012 12 13T00 00 00 EndDa
  • 在vba中连接两个数组?

    我如何将这些数组与结果结合起来 2 4 5 3 7 6 array1 Array 4 5 3 7 6 array2 Array 2 你有可能Join 并连接两个数组 然后Split 结果返回到一个新数组 array3 Split Join
  • 防止 Visual Studio Code 中的自动分号

    我正在使用 Visual Studio 代码 我不想在 CSS 属性后面加上自动分号 但 VS Code 给了我一个我不喜欢的自动完成选项 如何停止 CSS 属性末尾的自动完成分号 设置 gt 扩展 gt CSS 取消选中带有分号的完整属性
  • “无法加载包‘regex-posix’……未知符号‘regerror’”

    对于一个新项目 我一直在尝试构建threepenny gui包 我过去已经做过很多次了 没有任何问题 然而这一次 我遇到了一条不寻常的错误消息 gt stack build threepenny gui gt configure three
  • ODEi​​nt:任意精度的自适应积分

    ODEi nt 是否可以使用adaptive具有任意精度算术的积分例程 例如 我想将 Boost 多精度库与集成自适应 函数和受控步进器一起使用 ODEi nt 文档提供了对integrat const 使用任意精度算术的示例 但我无法修改
  • Windows Phone 8.1 上使用 .resx 资源时出现 MissingManifestResourceException

    我正在开发一个也针对 Android Xamarin 的 Windows Phone 8 1 应用程序 正如我在 PCL 上添加字符串资源 resx 并在启动器项目中引用它们以在我的视图中使用它一样 这一切在 WP 8 1 silverli
  • MySQL 中的字符串连接

    我正在使用 MySQL 和 MySQL Workbench 5 2 CE 当我尝试连接两列时 last name and first name 它不起作用 select first name last name as Name from t
  • + 运算符什么时候比 StringBuilder 更快? [复制]

    这个问题在这里已经有答案了 过去 我一直相信你应该使用StringBuilder and append String 当用变量构建字符串时 而不是string split i 在什么情况下这是准确的 我问是因为通常情况下 如果我要写以下内容
  • 直接从无窗口 Linux 终端启动 OpenGL 应用程序

    究竟如何让 OpenGL 应用程序直接从终端 Ubuntu Server 9 04 全屏运行 我在我的服务器上开发了一个用于视觉诊断的应用程序 但是 我不完全确定让它在无窗口环境中运行的最佳方法 理想情况下 我会运行我的程序 visuald
  • 在 TFS 中的解决方案之间共享代码 [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有几个不同的应用程序 我需要在它们之间共享代码以减少维护 我尝试在 stackoverflow 和 web 上阅读大量
  • 提取两个字符串之间不同的字符

    我用过adist计算两个字符串之间不同的字符数 a lt Happy day b lt Tappy Pay adist a b result 2 现在我想提取那些不同的字符 在我的示例中 我想获取字符串 Hd or TP 没关系 我试着看一
  • 通过 Gmail 发送电子邮件时出现错误

    在这里 我尝试使用 gmail 发送邮件 但出现以下错误 javax mail AuthenticationFailedException 534 5 7 14
  • 在 Laravel 4 中显示自定义验证的错误消息

    我通过创建一个类创建了一个自定义错误函数
  • 未定义参数的性能损失

    我经常在函数中使用可选参数 但一些测试显示它们在 Firefox 和 safari 中性能受到巨大影响 70 95 奇怪的是 如果我传入文字值不明确的那么就没有处罚 这里可能发生什么 我不会认为这是一个作用域链问题 因为它们本质上是函数的本
  • 正则表达式也匹配重音字符

    我有以下 PHP 代码 search foo bar que search string str replace search text This is my foo text with qu and other accented char