我正在尝试确定一个大写姓氏的方法; 但是,不包括小写前缀.
名称及其转换的示例:
还有一些名称包含需要完全大写的姓氏,因此识别前缀的简单函数是strchr()不够的:
PHP函数mb_strtoupper()不合适,因为它将整个字符串大写.同样strtoupper()是不合适的,并且在重音名称上也会失去重音.
围绕SO有一些答案可以部分回答这个问题,例如:使用PHP进行资本化
然而,常见的不足是假设所有姓氏为姓名的人Mac都跟随资本.
名称在数据库中正确地大写,因此我们可以假设拼写为Macarthur的名称是正确的,或者麦克阿瑟对另一个人是正确的.
我有一个小问题,我正在努力寻找解决方案.
基本上,假设你有以下字符串:
$string = 'Hello I am a string';
Run Code Online (Sandbox Code Playgroud)
并且你希望以下面的内容结束:
$string = 'Hello I am a string';
Run Code Online (Sandbox Code Playgroud)
简单地说,用一个不间断的空间替换最后一个空格.
我这样做是因为我不希望标题中的最后一个字是独立的.仅仅因为在标题方面:
Hello I am a
string
Run Code Online (Sandbox Code Playgroud)
看起来不那么好
Hello I am
a string
Run Code Online (Sandbox Code Playgroud)
一个人怎么做这样的事情?
同
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE);
Run Code Online (Sandbox Code Playgroud)
是否可以反向搜索字符串?即.返回主题中最后一次出现的模式的位置,类似于strripos
或者我必须返回所有匹配的位置preg_match_all并使用最后一个元素$matches?
我必须在HTML文档中替换字符串的最后一个匹配项(例如单词foo).问题是HTML文档的结构总是随机的.
我试图用preg_replace来实现这一点,但到目前为止我知道如何只替换第一个匹配,但不是最后一个匹配.
谢谢.
我正在尝试使用strrchr()and用“and”替换文本中最后一次出现的逗号str_replace()。
例子:
$likes = 'Apple, Samsung, Microsoft';
$likes = str_replace(strrchr($likes, ','), ' and ', $likes);
Run Code Online (Sandbox Code Playgroud)
但这会替换整个最后一个单词(在本例中为 Microsoft),包括此字符串中的最后一个逗号。我怎样才能删除最后一个逗号并将其替换为 " 和 " ?
我需要使用strrchr()作为函数来解决这个问题。这就是为什么这个问题没有重复而且更具体的原因。