DAX从入门到精通 2-6-6 文本函数

文本函数

DAX中的文本函数和Excel的非常类似,只有一小部分例外。这样的函数有CONCATENATE, EXACT,
FIND, FIXED, FORMAT, LEFT, LEN, LOWER, MID, REPLACE, REPT,RIGHT, SEARCH, SUBSTITUTE, TRIM, UPPER, and VALUE。这些函数对于合并文本,提取文本都非常有效。例如,可以通过识别逗号,来提取名和姓的字符串,而对于中间的title,我们要去掉。


image.png

首先,我们要确定两个逗号的位置,使用这些位置信息,我们来提取文本需要的信息。 SimpleConversion在字符串如果少于两个逗号的时候会报错,FirstLastName使用了更复杂表达式,保证了逗号缺失时候也不会报错。

Comma1 = IFERROR ( FIND ( ",", People[Name] ), BLANK ( ) )
Comma2 = IFERROR ( FIND ( ",", People[Name], People[Comma1] +
1 ), BLANK ( ) )
SimpleConversion = MID ( People[Name], People[Comma2] + 1, LEN
( People[Name] ) )
& " " & LEFT ( People[Name], People[Comma1] - 1 )
FirstLastName = TRIM (
MID (
People[Name],
IF (
ISNUMBER ( People[Comma2] ),
People[Comma2],
People[Comma1]
) + 1,
LEN ( People[Name] )
))&
IF (
ISNUMBER ( People[Comma1] ),
" " & LEFT ( People[Name], People[Comma1] - 1 ),
""
)

如上,Firstname列使用了一个很长的DAX表达式,但是你必须使用它来避免可能发生的错误,从而导致整个列的失败

你可能感兴趣的:(DAX从入门到精通 2-6-6 文本函数)