假設一個字的文件包含微軟Word VBA宏搜索和替換(正則表達式)
ab{cdefg{hij{k
而且我想{要移動一個位置向右像
abc{defgh{ijk{
我需要做與所有字符的數組然後運行與正則表達式搜索一個循環,並更換
搜索:
({)(array[index])
取代:
$2$1
平原正則表達式,而不循環將無法工作,因爲我處理具有複雜的人物印度語文字。我在inDesign中使用了JavaScript和ExtendScript,但我對VB沒有任何線索。任何人都可以幫忙嗎?
你能描述印度語的文字是如何影響的事情?例如,一些印度語字符在Word中表達爲2個字符,並且交換隻會移動「{」一個字符而不是2。 – 2015-12-03 09:13:57
是的。在一個字母和現實生活中出現的某些指示合併被視爲一個字母,實際上是Unicode中2-5個字母的聚類。 – coldbreeze16
我的(更明顯)建議。如果Word的查找/替換無法處理您正在處理的文本,請忘記正則表達式,並着眼於Word對象模型(和VBA)這一事實,將您的文檔視爲一系列字符對象,可以是索引1 ..等等。然後你需要迭代查找「{」的字符序列(可能忽略某些特殊印度字符序列的一部分的{{「字符,儘管我懷疑會發生),然後檢查以下字符並確定有多少個Unicode需要移動「{」的字符。 – 2015-12-03 21:50:15