1
引用符で囲まれた値を含む文字列を解析しようとしています。ここで私はこれまで持っているものである:すべて抽出されたトークンがあることをPyParsingのQuotedStringの使い方は?
'com.sec.android.app.camera.shootingmode.dual'
'6'
'1.003'
'5.0.1-1624448'
を印刷し
from pyparsing import Word, Literal, printables
package_line = "package: name='com.sec.android.app.camera.shootingmode.dual' versionCode='6' versionName='1.003' platformBuildVersionName='5.0.1-1624448'"
package_name = Word(printables)("name")
versionCode = Word(printables)("versionCode")
versionName = Word(printables)("versionName")
platformBuildVersionName = Word(printables)("platformBuildVersionName")
expression = Literal("package:") + "name=" + package_name + "versionCode=" + versionCode \
+ "versionName=" + versionName + "platformBuildVersionName=" + platformBuildVersionName
tokens = expression.parseString(package_line)
print tokens['name']
print tokens['versionCode']
print tokens['versionName']
print tokens['platformBuildVersionName']
注は、単一引用符で含まれています。これらを削除したいと思います。QuotedString
オブジェクトはこの目的のために用意されているようです。しかし、このスニペットを使用するには難しいです。QuotedStrings
;特に、そのコンストラクタはprintables
と思われません。
一重引用符を削除するにはどうすればよいですか?以下で式を置き換える
はい、 'QuotedString'のコンストラクタは、文字列の内容ではなく、開始と終了の区切り文字として使用する文字を受け取ります。 – PaulMcG