writecrow / tag_converter
将标记文本文件转换为JSON、PHP或XML
1.5
2021-08-01 18:27 UTC
Requires (Dev)
- brianium/paratest: ^3.0
- phpunit/phpunit: ~7
Suggests
- ext-mbstring: For best performance
- symfony/polyfill-mbstring: If you can't install ext-mbstring
README
一个PHP库,用于将带有语料库元数据的文件转换为JSON、PHP或XML。
历史
语料库语言学研究人员使用类似标记的语法来提供关于文本的元数据。为了供应用程序消费,这种语法需要转换为更通用、机器可读的格式。所选择的格式是JSON。
基本用法
包含的/demo/index.php
文件包含一个转换表单的演示。
通过您喜欢的途径(例如use
或require
)使您的代码意识到TagConverter类
然后将文本字符串传递给该类
$text = TagConverter::json('<MyTag: 123>My tagged text here'); echo $text; // Returns {"MyTag":"123","text":"My tagged text here"} $text = TagConverter::php('<MyTag: 123>My tagged text here'); echo $text; // Returns array('MyTag' => '123', 'text' => 'My tagged text here') $text = TagConverter::xml('<MyTag: 123>My tagged text here'); echo $text; // Returns <?xml version="1.0"?><root><MyTag>123</MyTag><text>My tagged text here</text></root>
预期输入格式
库期望的语料库风格标记语法如下定义
- 标记必须用
<
和>
括起来 - 标记名和标记值只能包含字母数字字符、空格、下划线和连字符。
- 标记名必须与标记值通过
:
分隔 - 标记名或标记值开头和结尾的空格将被忽略;标记值内部的空格将被保留
- 所有未用
<
和>
括起来的内容都将被视为"文本"
测试
可以通过执行vendor/bin/phpunit
来运行单元测试(在composer install
之后)