Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-区分大小写字符_Php - Fatal编程技术网

PHP-区分大小写字符

PHP-区分大小写字符,php,Php,我想分开大写或小写字符 在本文中:“你好,世界,你好吗?” 我想在第一个变量中加入“HELLO WORLD” 第二句是“你好吗” 如何使用php实现这一点 非常感谢这是假设字符串的第一部分是大写,其余部分是正常的(例如混合大小写)。就像你贴的例子一样 preg_match('/^([A-Z\s]+)(.*)$/', $string, $match); $first_part = trim($match[1]); $second_part = trim($match[2]); 如果句子中混合了大

我想分开大写或小写字符

在本文中:“你好,世界,你好吗?”

我想在第一个变量中加入“HELLO WORLD” 第二句是“你好吗”

如何使用php实现这一点


非常感谢

这是假设字符串的第一部分是大写,其余部分是正常的(例如混合大小写)。就像你贴的例子一样

preg_match('/^([A-Z\s]+)(.*)$/', $string, $match);
$first_part = trim($match[1]);
$second_part = trim($match[2]);
如果句子中混合了大写和混合大写的单词,那么我会这样做(注意,这会用单个空格替换单词之间的所有内容)


这是假设字符串的第一部分是大写,其余部分是正常的(例如混合大小写)。就像你贴的例子一样

preg_match('/^([A-Z\s]+)(.*)$/', $string, $match);
$first_part = trim($match[1]);
$second_part = trim($match[2]);
如果句子中混合了大写和混合大写的单词,那么我会这样做(注意,这会用单个空格替换单词之间的所有内容)


如果您的输入字符串始终是一个大写字母序列,后跟一个小写字母序列,类似这样的操作可能会起作用

if (preg_match('/^([A-Z\s]+)\s+([a-z\s+])$/', $str, $matches))
{
   $upper=$matches[1];
   $lower=$matches[2];

}
通过那个正则表达式

  • ^
    将匹配锚定到字符串的开头,以便我们测试整个字符串
  • 左括号开始一个组,我们可以在后面提取,
    $matches[1]
  • [A-Z\s]
    是一个字符类,用于匹配从A到Z或whitespce的字符
  • +
    确保有一个或多个这样的字符
  • 关闭第一个组
  • 然后我们匹配更多的空格,然后以类似的方式查找小写部分
  • $
    将匹配锚定到字符串的末尾,这样我们就可以确保考虑了整个字符串

如果您的输入字符串始终是
大写序列
,后跟
小写序列
,则类似的操作可能会起作用

if (preg_match('/^([A-Z\s]+)\s+([a-z\s+])$/', $str, $matches))
{
   $upper=$matches[1];
   $lower=$matches[2];

}
通过那个正则表达式

  • ^
    将匹配锚定到字符串的开头,以便我们测试整个字符串
  • 左括号开始一个组,我们可以在后面提取,
    $matches[1]
  • [A-Z\s]
    是一个字符类,用于匹配从A到Z或whitespce的字符
  • +
    确保有一个或多个这样的字符
  • 关闭第一个组
  • 然后我们匹配更多的空格,然后以类似的方式查找小写部分
  • $
    将匹配锚定到字符串的末尾,这样我们就可以确保考虑了整个字符串

只是为了使用不同的非regexp方法

$original = "HELLO WORLD how are you";

$upper = trim(implode(array_intersect(str_split($original),str_split(strtoupper($original)))));
$lower = trim(implode(array_intersect(str_split($original),str_split(strtolower($original)))));

echo $upper,'<br />';
echo $lower,'<br />';
$original=“你好,世界你好”;
$upper=修剪(内爆(数组相交(str_分割($original),str_分割(strtoupper($original '))));
$lower=trim(内爆(数组相交(str_分割($original),str_分割(strtolower($original '))));
回声$upper,“
”; 回声$lower,“
”;
只是为了使用不同的非regexp方法

$original = "HELLO WORLD how are you";

$upper = trim(implode(array_intersect(str_split($original),str_split(strtoupper($original)))));
$lower = trim(implode(array_intersect(str_split($original),str_split(strtolower($original)))));

echo $upper,'<br />';
echo $lower,'<br />';
$original=“你好,世界你好”;
$upper=修剪(内爆(数组相交(str_分割($original),str_分割(strtoupper($original '))));
$lower=trim(内爆(数组相交(str_分割($original),str_分割(strtolower($original '))));
回声$upper,“
”; 回声$lower,“
”;
尽管regexp是确定字符上限或下限的最佳方法,但您也可以使用此函数了解字符的上限或下限。若作为参数发送的字符串包含完全上限,则此函数将返回真值

function is_upper($str)
{
$str2=strtoupper($str);
$$str="x";
if($$str==$$str2)
{

return true;

}
else
return false;
}

虽然regexp是确定字符的上限或下限的最佳方法,但您也可以使用此函数来了解字符的上限或下限。若作为参数发送的字符串包含完全上限,则此函数将返回真值

function is_upper($str)
{
$str2=strtoupper($str);
$$str="x";
if($$str==$$str2)
{

return true;

}
else
return false;
}

我知道这有点晚了,但我在寻找其他问题时偶然发现了这个问题。无论如何,
preg_split
适用于这种情况:

$original = "HELLO WORLD how are you";

$split = preg_split(
    '/([[:lower:]].*)/',
    $original,
    0,
    PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY
);

print_r($split);
产出:

Array
(
    [0] => HELLO WORLD 
    [1] => how are you
)

我知道这有点晚了,但我在寻找其他问题时偶然发现了这个问题。无论如何,
preg_split
适用于这种情况:

$original = "HELLO WORLD how are you";

$split = preg_split(
    '/([[:lower:]].*)/',
    $original,
    0,
    PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY
);

print_r($split);
产出:

Array
(
    [0] => HELLO WORLD 
    [1] => how are you
)

发布到目前为止的代码?这是什么逻辑。是否可以输入类似“你好,世界”“你好吗”,以及您希望如何处理它?那么
HEllO WoRLD
?您希望能够将“HEllO WoRLD”输出也处理为“HLOWRD el ol”吗?我总是有一个大写顺序,后面跟着一个小写顺序。这是迄今为止的代码吗?这是什么逻辑。是否可以输入类似“你好,世界”“你好吗”,以及您希望如何处理它?你想把“HEllO WoRLD”的输出也处理成“HLOWRD el ol”吗?我总是有一个大写的序列,后面跟着一个小写的序列。我喜欢这段代码,但我只有小写的部分:“你好吗”@Bizboss:对不起。我的代码有点输入错误。现在修好了。我还添加了另一个混合大小写句子的例子。我喜欢这段代码,但我只有小写部分:“你好吗”@Bizboss:我的道歉。我的代码有点输入错误。现在修好了。我又加了一个混合格句子的例子。