结合公式

时间:2016-09-01 04:48:25

标签: regex tableau

请帮我合并这两个公式:

  1. #include <stdio.h> // ::sprintf #include <ctype.h> // ::isprint #include <string> // std::string #include <unordered_map> // std::unordered_map namespace my{ using std::string; using std::unordered_map; auto string_from( char const ch ) -> string { return string( 1, ch ); } // Note: "string{1,ch}" is something else. auto is_printable( char const ch ) -> bool { return !!::isprint( static_cast<unsigned char>( ch ) ); } auto escaped( char const ch ) -> string { static unordered_map<char, string> const escapes = { { '\a', "\\a" }, // 7, ^G, alert (bell) { '\b', "\\b" }, // 8, ^H, backspace { '\t', "\\t" }, // 9, ^I, tab { '\n', "\\n" }, // 10, ^J, newline / linefeed { '\v', "\\v" }, // 11, ^K, vertical tab { '\f', "\\f" }, // 12, ^L, formfeed { '\r', "\\r" }, // 13, ^M, carriage return { 27, "\\e" }, // 27, ^[, escape (NON-STANDARD) { '\\', "\\\\" } // backslash }; auto const it = escapes.find( ch ); if( it != escapes.end() ) { return it->second; } else if( is_printable( ch ) ) { return string_from( ch ); } else { int const code = static_cast<unsigned char>( ch ); char buf[] = "\\xDDDD"; sprintf( buf + 2, "%04X", code ); return buf; } } auto escaped( string const& s ) -> string { string result; for( char const ch: s ) { result += escaped( ch ); } return result; } } // namespace my #include <iostream> #include <locale.h> using namespace std; auto main() -> int { using my::escaped; auto const text = "item \t \xC7\x81new_item\n"s; setlocale( LC_ALL, "" ); cout << escaped( text ) << '\n'; }

  2. REGEXP_EXTRACT([resolution],'(\d{2}:\d{2})')

  3. 实施例: 我有行

    1.resolution(01:01)已完成修理设备

    2.resolution(01:02)预防性维护

    3.问题不是最新的

    4.resolution(01:03)完成修理设备。问题不是最新的

    我有2个计算字段。

    1. REGEXP_EXTRACT([resolution],'(\ d {2}:\ d {2})') - 查找数字01:01,01:02,01:03

    2. 如果包含([决议],“已结束”)和不包含([决议],“决议”)那么1结束0结束 - 排除记录:3。问题不是最新的

      < / LI>

      我想制作一个结合了两个公式并显示数字的公式:01:01,01:02,01:03

1 个答案:

答案 0 :(得分:0)

我假设您正在尝试在计算字段中使用这些?

您应该能够将初始的一个拉入第二个计算字段。因此,如果您创建第一个计算字段(analysis-&gt;创建计算字段),并将其称为“Calc 1”。所以这将有你的初始公式:

REGEXP_EXTRACT([resolution],'(\d{2}:\d{2})')

然后创建第二个计算字段并将其命名为“Calc 2”。在此公式中,只需更新原始内容即可调用包含公式的第一个计算字段:

IF CONTAINS([Calc 1],"closed") and NOT CONTAINS([Calc 1],"resolution") THEN 1 ELSE 0 END