0
511 次浏览

我在使用 pn USFM 标记时,偶尔发现专有名词后面跟着一个空白。

例如:\pn Jesus \pn* 。你可以看到 Jesus 名字后面有一个空白。我该如何搜索名字后面带有空白的专有名词?

当我搜索 \pn* 时,我得到大约 7000 个结果。当我搜索前面带空白的 \pn* 时,我得到大约 1000 个结果。然而,它发现的条目名字后面并没有空白。这真的让我很困惑。你有什么建议来搜索这种情况吗?人们会以为这应该是一个简单的搜索,但似乎并不是。

机器翻译自 English
Paratext (251 分) 发布 | 511 次浏览

3 个回答

0
最佳答案

The best way to search for this is with regular expressions. In the Paratext Find window paste this
regex:\s\\pn\*
You must “escape” both \ and * with a \.
I have a general solution I use on all projects, which is to never allow a space before end character tags. You can find all possible instances using this in the Paratext Find window:
regex:\s\\\+?\w+\*
You can fix them with this find and replace using RegEx Pal:
(\s)(\u200F?\\\+?([^xf]\w*|[xf]\w+)\*)
\2\1
Note that this regex excludes spaces at the ends of footnotes and cross-references. It also makes provision for the Unicode right-to-left marker (u+200F). Fixing extra spaces in RTL text is particularity difficult without this tool.

(1.8k 分) 发布

实际上,查找 \b 在 \pn 之前的最快方法是使用标记清单 (Marker Inventory)。勾选显示前一个标记并按 \b 或 \pn 排序。这是一个非常实用的工具。别忘了右键单击并将引用复制到列表窗口。
祝福 Shegnada

机器翻译自 English

我认为这里对“空白”一词的措辞有些混淆。
我的理解是 @Clear7419 询问的是“搜索 \pn* 前的空格”,而不是“搜索空行

机器翻译自 English

@CrazyRocky You are correct, I was just searching for a blank space and not a blank line. Thanks for your helpful regular expression. Can you explain what you mean by escaping both \ and * with a \ ? I pasted the expressing but it found examples with no blanks.

来自正则表达式教程 - 字面字符和特殊字符:

因为我们想要做的不仅仅是简单地搜索字面文本片段,我们需要保留某些字符用于特殊用途。至少有 12 个字符具有特殊含义:

反斜杠 \,脱字符 ^,美元符号 $,句点或点 .,竖线或管道符号 |,问号 ?,星号或星 *,加号 +,左括号 (,右括号 ),左方括号 [,和左花括号 {。这些特殊字符通常被称为“元字符”。大多数字符单独使用时都是错误。

如果你想在正则表达式中将其中任何字符用作字面字符你需要用反斜杠转义它们。如果你想匹配 1+1=2,正确的正则表达式是 1\+1=2。否则,加号具有特殊含义。

在 PT 中,我们经常需要在正则表达式中使用 \,因为它对我们来说对于 usfms 来说非常基本。因此,要在正则表达式中搜索 \p,你输入 \\p。

(学习转义是有用的,因为即使在这个论坛工具中,某些字符除非你转义它们或使用通过 </> 图标访问的“预格式化文本”功能,否则不会渲染。)

机器翻译自 English

我相信你指的是这段代码:

我的通用表达式搜索嵌入标记,这在脚注中特别常见。例如,有效的 USFM 要求在脚注中,\pn ...\pn* 标记必须使用反斜杠后的加号字符标记为嵌入:
\f + \fr 8:5 \ft I want to put \+pn Jesus \+pn* in a footnote.\f*
在这个例子中,\+pn* 前后有空格。上面的 RegexPal 代码将找到该空格并将其移动到 \+pn* 之后。如果这导致连续两个空格,Paratext 会自动将它们合并为一个。
正如 @Tim 所说,加号 + 必须转义,但在这些搜索中它也是可选的,所以这段代码是 \+?
我希望这解决了你的问题。

机器翻译自 English
+1

我用老式的方法做了这件事,搜索每个末尾字母 + 一个空格 + USFM 标记。它完成了工作。

机器翻译自 English
(251 分) 发布
0

你好。

可以构建不同的公式。一个回答你的问题并且你可以直接在 Paratext 搜索引擎中使用的公式是:
regex:\p{L}\s\\pn\*
其中:
regex: 是使用正则表达式的命令。
\p{L} 将搜索任何字母(在这种情况下是单词的末尾)。
\s 将搜索一个空格
\\pn\* 将搜索 \pn*。必须这样写,正则表达式才能识别它。
这样,你将拥有一个列表,列出所有字母后跟空格和 \pn* 的位置。

如果你希望搜索提取空格前的整个单词,你只需要在这里添加一个 + 号:regex:\p{L}+\s\\pn\*

使用 DeepL 翻译:世界上最准确的翻译器 翻译

机器翻译自 Español
(973 分) 发布

相关问题

0
5 个回答 525 次浏览
Recently I noticed that when I attempt to type in the search menu box I get a blank box that says Searching ... I lose the search function. Anyone else encountering this issue?
Chris Guthrie 128 发布 提问于 四月 28, 2020
0
3 个回答 446 次浏览
在给出跨章节的经文引用时,Komba 团队更喜欢将其标记为如下格式:1:1 - 3:5 也就是说,使用 - 然而,似乎 经文引用设置 (Scripture Reference Settings)无法处理仅在字符后有空格的情况,而字符前有空格时则 ... 他人也将此作为首选惯例 对于这个团队来说,没有空格的长破折号(em-dash)太长了,而且看起来不美观
anon142050 118 发布 提问于 四月 17, 2019
0
1 个回答 489 次浏览
I'm finally at the point where I need to ask: is there any way to fix the issue of having to add a space ... selected in Checking > Quotation Rules', but something's not right
Paul 642 发布 提问于 五月 11, 2017
0
6 个回答 755 次浏览
你好 是否可能拥有一个用于笔记的共享空白文档?我们的团队需要一个地方来记录在翻译过程中做出的各种决定。 谢谢。
anon084515 116 发布 提问于 一月 18, 2021
0
2 个回答 50 次浏览
在某个项目中,经典的脚注看起来是这样的: \f + \fr cc.v \fq keyword (mostly singular, if noun) \ft Plenty useful stuff.\f* 出于某种原因,我们需要在关键词和解释性文本之间使用更小的 ... 辑来实现这一点,我愿意接受指导 只是希望能避免重复造轮子,因为可能已经有现成的解决方案了
Tim 934 发布 提问于 五月 29
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
So Peter was kept in prison, but the church was earnestly praying to God for him.
Acts 12:5
3,048 个问题
6,007 个回答
5,672 条评论
2,027 位用户