如何根據字符值而不是數值提取列文本?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />嗨 JMP 社區,
我在標題為描述的列中有文本,如下所示:
描述欄
第 1 行:軟件問題:系統軟件;沒有反應
第 2 行:軟件問題:系統軟件;沒有反應
第 3 行:電子問題:電源;回應 1
第 4 行:計算機和用戶界面問題:系統軟件;回應 2
好的,所以我想把這個專欄中的文字根據標點符號分開。因此,在一個新列中,我想要在冒號“:”之前顯示的文本,而在另一列中,我想要在分號和冒號“:”和“;”之間的文本:
所以我應該得到:
描述 列 B 列 C 列
第 1 行:軟件問題:系統軟件;無響應 軟件問題 系統軟件
我創建了這些新列,並應用了一個公式,我嘗試使用左/右字符函數(我將描述列稱為文本字段)。但是,所有字符函數的長度都基於數值。如何使用左/右字符功能說
“正確的(描述欄, ":")" 這樣我就得到了 ":" 之前的所有文本??
謝謝你的幫助,
-莎拉
Re: 如何根據字符值而不是數值來提取列文本?謝謝! 兩個版本都完全符合我的要求
Re: 如何根據字符值而不是數值來提取列文本?這裡的另一種方法是使用 Word() 函數。
B列的公式:
Word(1, :描述欄, ":;" )
C列的公式:
Trim( Word( 2, :Description Column, ":;" ) )
Re: 如何根據字符值而不是數值來提取列文本?這將滿足您的需求。訣竅是使用 contains 和 substr 來獲取您想要的確切子字符串。
dt =新表( “問題” ,
添加行( 4 ) ,
新列( “描述” ,
特點,
標稱,
設定值(
{ “軟件問題:系統軟件;無響應” ,
“軟件問題:系統軟件;無響應” ,
“電子問題:電源;響應 1” ,
“計算機和用戶界面問題:系統軟件;響應 2” }
)
)
) ;
dt <<新專欄( “B欄” ,特點,標稱,
公式(
冒號位置=包含( :描述, “:” ) ;
子串( :描述, 1 ,冒號位置- 1 ) ;
)
) ;
dt <<新專欄( “C列” ,特點,標稱,
公式(
冒號位置=包含( :描述, “:” ) ;
semi_pos =包含( :描述, “;” ) ;
子串( :描述,冒號位置+ 2 , semi_pos -冒號位置- 2 ) ;
)
) ;