在循環中使用Pat Match嗨,
我正在嘗試編寫一個程序來獲取輸入字符串,在完整字符串中找到一個關鍵字,並創建一個只有縮寫的新列。該腳本應迭代單個列的所有行。我的代碼拋出一個錯誤,我相信它是我的循環的語法,但似乎無法弄清楚錯誤在哪裡。這是我有的:
For Each Row(
:prodFam = If(
Pat Match(:prodGroup, "aleutian"),
"ALEUTIAN",
Pat Match(:prodGroup, "ari"),
"ARI",
Pat Match(:prodGroup, "blue"),
"BLUE RIDGE",
然後循環繼續。非常感謝任何幫助,謝謝!
回复:在循環中使用Pat Match正如您所說,Contains函數返回一個數值(包含該項的位置)。但是,您可以將值視為boolean:0 = false,否則為true,因此您可以編寫將Contains函數視為boolean的代碼:
如果(包含(...),
// 做一點事
)
回复:在循環中使用Pat Match你需要一個布爾響應如果() 工作的功能。那種方式是如何結果的載有() 將被解釋為我已經解釋過的。
回复:在循環中使用Pat Match使用Contains()函數的問題是,當我真正需要true或false布爾值時,它返回一個數值。我想我可以使用它返回的值來索引一個子字符串,但最後看起來像是可以使用pat匹配完成的更多代碼行,不是嗎?謝謝回复!
回复:在循環中使用Pat Match首先,如果此代碼不是更大腳本的一部分,那麼您可以輸入列公式。在論證中每行() 函數與列公式相同。
其次,雖然字符串模式非常有用,但我認為你可以使用包含(測試字符串,目標字符串) 在這種情況下。你不是在尋找一個模式而是一個文字字符串(單詞)。載有() 如果找到則返回位置,如果未找到則返回零。JMP將零解釋為false,將非零解釋為true,因此您的邏輯實現為如果() 功能保持原樣。
回复:在循環中使用Pat Match所以我意識到,一旦創建了對列的引用,就不再使用冒號來聲明它是列名。但是,我的腳本現在運行時沒有使用縮寫填充表。我還缺少什麼嗎?謝謝!