小编Bry*_*jer的帖子

涉及日语的PHP正则表达式

我的目标是通过Microsoft Word文档(.docx)过滤所有日语汉字和假名.我正在使用的当前代码如下:

preg_match_all('~[\x{4e00}-\x{9faf}]([\x{3040}-\x{309f}]) \= ([a-z]) \=+~u', $data, $matches);
Run Code Online (Sandbox Code Playgroud)

根据一些研究,我发现日文文本的unicode值如下:http://www.rikai.com/library/kanjitables/kanji_codes.unicode.shtml

我正在使用的数据示例如下所示:

时(とき)= toki =时间; 小时; 场合; 时刻を= wo =粒子标记句子的直接对象(时=时间)超えて(こえて)= koete = cross

我的最终目标是能够以类似的模式运行preg_match_all获取数据,看起来像"超えて(こえて)= koete"之前的信息(以及里面的信息()和之后的罗马化= =

我正在寻找的结果将是一个返回的数组,看起来像:

array(
    0 => array('?', '??', 'toki'),
    1 => array('???', '???', 'koete')
);
Run Code Online (Sandbox Code Playgroud)

每个数组的第一个结果包括"汉字,平假名,可能还有片假名",而第二个结果只有平假名,第三个结果只是普通的字母字符.我对正则表达式并不是很好,并添加了Japaense unicode,我很无能为力,任何帮助都会非常感激!谢谢!

php regex unicode preg-match-all

6
推荐指数
1
解决办法
2231
查看次数

php分割半宽和全宽句子

我需要在每个时段,感叹号和问号将我的文本拆分成一个数组.

带有全宽周期和感叹号的示例:

$string = "?????????????????????????????????";
Run Code Online (Sandbox Code Playgroud)

我正在寻找以下输出:

Array ( 
    [0] => ??????????????????????
    [1] => ??????????? )
Run Code Online (Sandbox Code Playgroud)

我需要相同的代码才能使用半宽.

全宽和半宽混合的例子:$ string ="嗨.我是鲍勃!很高兴认识你.日本语を勉强しています.你了解我吗?";

输出:

Array ( 
    [0] => Hi.
    [1] => I am Bob!
    [2] => Nice to meet you.
    [3] => ????????????
    [4] => Do you understand me? )
Run Code Online (Sandbox Code Playgroud)

我吮吸正则表达式,无法找到解决方案,也找不到解决方案.

我试过了:

$string = preg_split('(.*?[???])', $string);
Run Code Online (Sandbox Code Playgroud)

php regex

1
推荐指数
1
解决办法
748
查看次数

标签 统计

php ×2

regex ×2

preg-match-all ×1

unicode ×1