pattern-matching - 如何使用 TUSTEP 查找行的最后一个字母
问题描述
我正在使用 Tustep 并想识别一首诗中每一行的最后一个字母,即押韵词的最后一个字母。
在以下示例中,我想获取 e,t,e,t - 仅此而已:
Das Glück ist eine leichte Dirn e ,
Und weilt nicht gern am selben Or t ;
Sie streicht das Haar dir von der Stirn e
Und küßt dich rasch und flattert for t。
zn,,,-{00}{&a}{]}-
让我在行尾得到任何单词,并且zn,,,-{00}{&a}{]}-{00}{&a}[.,;]{]}-
我什至得到后面跟着标点符号(和行尾)的单词。
但我真正想要的不是单词,而是这些单词的最后一个字母。
解决方案
如果您的文本没有变音符号,则以下 TUSTEP 搜索参数表达式应该可以解决问题:
zn,,,--{&a}{]}{0}{@} --{&a}{]}{0}{@}-
它的作用如下:主要模式{&a}{]}{0}{@}
查找单个字母 ( {&a}
),可选地后跟非字母/非数字字符 ( {0}{@}
)。这两个元素用右手标记 ( {]}
) 分隔,确保只有字母是标记字符串的一部分。如果我们只使用这种搜索模式,我们会找到所有单词的最后一个字母。由于您只对行尾感兴趣,我们简单地排除所有后跟可选标点字符和强制空格字符的单词。此排除模式与搜索模式基本相同,不同之处在于末尾有一个空格字符:--{&a}{]}{0}{@} --
.
当然必须注意,如果您的行最后有尾随空格,则整个搜索模式都会失败。因此,在应用此搜索模式之前,您应该先修剪线条。
编辑:如果你的文字确实有变音符号,上面的答案会产生一些错误的匹配,例如:
Sehr schlimm: eingeladen se n ,
wenn zu Hause die Räume Stille r ,
der Ca fé bessel r
und keine Unterhaltung nötig is t。
(注意“é”之前匹配的“f”)。因此,在带有变音符号的场景中,我建议使用
zn,,,--{&a}{]}{0}\%{0}{%} --{&a}{]}{0}{%}-
推荐阅读
- php - 以编程方式在现有表中添加行和列,无需迁移 -laravel 刀片
- java - 如何将其转换为 Java lambda 格式?
- sql-server - 如何进行 SQL Server 递归 CTE
- r - R根据数据范围和变量组合填充数据值
- android - 有没有办法从android中的图像视图中获取图像路径?
- javascript - jsdoc - 参数对象内的默认属性值
- python - 在 Python 中,当我删除一个变量和 gc.collect() 时,为什么我可以找到地址来获取内容?
- node.js - 有没有办法使用 fs.readFile 读取或转换请求接收的对象
- java - 从github下载jar文件?
- javascript - MongoDB 存储“Promise”对象而不是散列密码