热搜:NVER node 开发 php

php过滤汉字的问题

2024-08-19 17:00:01
php过滤汉字的问题

老师:小明到了吗。班长:小明肚子痛,请假半天。老师:王磊干什么去了。班长:王磊请事假2天。老师:陈华没来吗?班长:陈华到学生回去了。
我想把老师提问过滤掉。只留下:班长:小明肚子痛,请假半天。班长:王磊请事假2天。班长:陈华到学生回去了。

这样php代码怎么写。


回复讨论(解决方案)

1.以。结尾形成数组
2.循环数组 将 开始 是 "老师"的正则替换成空
3.导出数组内容

老师的提问不都是句号结尾的,
我不太了解正册  可以给出代码吗

可以以班长结尾  这个总是有的,可以再输出的时候在加上

如果像你现在这样都是一问一答的话其实只要按照句号切割后进行数组合并即可。

$s = '老师:小明到了吗。班长:小明肚子痛,请假半天。老师:王磊干什么去了。班长:王磊请事假2天。老师:陈华没来吗?班长:陈华到学生回去了。';echo preg_replace('/老师:.+(班长.+)/U', '$1', $s);
班长:小明肚子痛,请假半天。班长:王磊请事假2天。班长:陈华到学生回去了。

$str='老师:小明到了吗。班长:小明肚子痛,请假半天。老师:王磊干什么去了。班长:王磊请事假2天。老师:陈华没来吗?班长:陈华到学生回去了。';$arr=explode('老师:',$str);foreach($arr as $k=>$v){    $item=mb_strpos($v,'班',0,'gbk');    $len=mb_strlen($v,'gbk');    $res=mb_substr($v,$item,$len,'gbk');    echo $res;}


班长:小明肚子痛,请假半天。班长:王磊请事假2天。班长:陈华到学生回去了。