问题标签 [grep-indesign]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - Adobe InDesign 中的 GREP 样式
几天前,我发布了一个关于使用 XML 从 MySQL 数据库将数据导入 InDesign 文件的问题。我已经对其进行了研究,并且由于从其他来源获得的一些帮助,我认为该项目应该相当简单。
本质上,我们有一个唯一的 5 位产品 ID。导入时,我们希望将最后一位数字用作条形码的颜色。每个数字都将被分配一种颜色(从 0 到 9),数据将显示在一个表格中,如下所示:
我的问题是,有没有人有在 Adobe InDesign 中使用 GREP 样式的经验,并且可以解释我们如何实现这一点(即根据数字中的最后两位数字设置单元格的单元格样式)?
regex - grep 大写单词到小写同时排除罗马数字
我正在尝试编写一个正则表达式来将所有大写单词转换为小写,同时排除大写罗马数字的转换。
我发现的唯一方法是将后跟空格、逗号或句点的所有大写单词以及带连字符的单词转换为小写。然后将所有罗马数字转换回大写。
我用它来转换为小写:
然后我不得不去寻找并替换所有可疑的罗马数字。
有什么更好的方法来做到这一点?我尝试了没有运气的否定前瞻表达式,但我写它们的能力不是很强。
我正在测试的样本是美国宪法。这是输入的示例:
我们,美国人民,为了建立更完美的联盟,建立正义,确保国内安宁,提供共同防御,促进普遍福利,并确保我们自己和我们的子孙后代获得自由的祝福,请并为美利坚合众国制定本宪法。
第一条。
教派。1. 此处授予的所有立法权应授予美国国会,该国会应由参议院和众议院组成。
教派。2. 众议院由每两年由各州全体人民选出的议员组成,各州的选举人应具备州议会最多分部选举人所需的资格。No person shall be a Representative who shall not have attained to the age of twenty-five years, and been seven years a citizen of the United States, and who shall not, when elected, be an inhabitant of that State in which he shall be选择。
第四条。
第五条。
第六条。
replace - GREP 表达式
我需要 GREP 表达式的帮助来查找和替换一组可变的单词。句子总是以相同的两个单词(粗斜体)开头,总是以(冒号)结尾,但中间的位会有所不同。所以我需要搜索:
Bold italicized
那么任何一串单词:
IE。以“Bold italicized”开头,然后是任何一组单词,以“:”结尾
例如:
然后,我将对该文本应用一些格式。谢谢你。
adobe-indesign - 如何修复此 GREP 语句
我正在尝试仅选择x
它总是在括号中。所以我想 LookBehind 是左括号,然后是零个或多个字符,而 LookAhead 是零个或多个字符,后跟一个括号。
我认为这会起作用,但它没有:(?<=\(.?)x(?=.?\))
这将选择括号之间的所有文本,但我只想要x
:(?<=\().?x.?(?=\))
我也试过这个(不确定你是否可以有两个lookbehinds......但它没有用:
(?<=\()(?<=.?)x(?=.?)(?=\))
我没主意了。
javascript - Adobe Indesign JavaScript:连续使用 app.findGrep() 和 app.changeGrep()
我有一个脚本可以查找和替换预定义的术语,并在单独的图层上直观地标记更改。
该过程基本上分两步进行:
遍历表达式列表,使用app.findGrep()查找每个表达式,并在匹配的开头和结尾插入 Note-Markers。
使用app.changeGrep()再次循环遍历同一个列表并用另一个预定义列表的相应术语查找和替换。之后,使用标记的位置在新图层上绘制矩形,以可视化更改。
问题是,即使第 1 步工作正常(标记显示在它们的正确位置),第 2 步似乎也没有做任何事情,除非我将 findWhat 参数更改为尚未在列表中使用的表达式步骤1。
所以,我的猜测是,Indesign 会以某种方式缓存所有执行的搜索,并防止使用这些表达式进行任何进一步的查找。
但是,如果我在执行脚本后使用标准的 find&replace 表单,我仍然可以从列表中找到任何表达式而没有任何问题。
谁能看到我如何解决这个问题?
谢谢你的帮助!
adobe-indesign - InDesign Grep:将句子开头更改为大写
我对脚本编写相对较新,并且在 InDesign 脚本中,我试图将所有句子的所有首字母都更改为大写(其中许多是小写,因为我从不同的文本源随机生成了 setences)。
到目前为止,我能够使用这个 Grep 表达式找到文本部分:
我还发现了 Peter Kahrel 在 InDesign Secrets 上分享的这个脚本:
但是,当我现在替换 ^. 用我自己的表达式,将小写变为大写,脚本不起作用,这是有道理的,因为我不想更改 findGrep 结果的第一个字符,而是最后一个。但是我怎样才能找到最后一个字符?句子之间的间隔有不同的长度,所以我不能简单地输入 2 而不是 0。
任何帮助将不胜感激!谢谢!
编辑:我正在研究 CS6。
replace - Adobe InDesign 中的 GREP 用于函数名称
我正在寻找包含括号的 JavaScript 函数名称的 grep。
例子:myfunction()
我还需要它来忽略.on()
,.click()
等jQuery 事件.width()
。所以基本上“在括号和括号之前获取单词,但如果单词之前有 a 则不会.
”。我尝试了不同的东西,([\l\u]())
但我无法理解。有任何想法吗?
automation - 在 InDesign 中控制段落在页面上的开始和结束位置
我希望 .indd 文档的页面以常规文本开头,没有段落(也不在末尾),并且如果下一页至少有一行常规文本,则以斜体文本或 2 行常规文本结尾还。有人可以帮我解决这个问题吗?
好的例子:
狐狸跳过懒狗
用户狐狸跳过懒狗
用户
复杂的好例子
狐狸跳过懒狗
用户狐狸跳过懒狗
狐狸跳过
下一页
懒狗
用户狐狸跳过懒狗
用户
不好的例子:(
以段落开头和结尾)
狐狸跳过懒狗
用户
-
(以常规文本结尾)
狐狸跳过懒狗
用户
狐狸跳过懒狗
-
(以斜体字开头)
用户
狐狸跳过懒狗
用户
javascript - 如何将 $2 值存储到 InDesign GREP 中的变量使用 javascript 查找/更改
我正在编写 InDesign javascript,它会 GREP 查找/更改 - 实际上现在我只需要找到一些文本并将 grep 在 $2 值中找到的内容保存到我的脚本变量中 - 我的脚本的其他所有内容我都知道该怎么做 - 所以我现在需要的是找出如何获得这 2 美元
简单的例子:
adobe-indesign - InDesign GREP:斜体特定字符
我想使用 GREP 样式将公司名称的一部分斜体。例如:“在*设计*。” 设计只有在“In”这个词之后才会显示为斜体,但“设计”在单独出现时不会显示为斜体。