Add COL_CUSTOM_PRIME_REGEX

Use this as a common regex to split multi-field custom columns.

Change-Id: I40f76743284c5981c95d2e47d6d1d2a7f357d2ea
Reviewed-on: https://code.wireshark.org/review/12753
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
This commit is contained in:
Stig Bjørlykke 2015-12-20 21:01:29 +01:00
parent c067ba606e
commit 8fe68db944
4 changed files with 6 additions and 3 deletions

View File

@ -36,6 +36,7 @@ extern "C" {
#define COL_MAX_LEN 256
#define COL_MAX_INFO_LEN 4096
#define COL_CUSTOM_PRIME_REGEX " *([^ \\|]+) *(?:(?:\\|\\|)|(?:or))? *"
/** Column expression */
typedef struct {

View File

@ -64,7 +64,7 @@ col_setup(column_info *cinfo, const gint num_cols)
cinfo->col_first[i] = -1;
cinfo->col_last[i] = -1;
}
cinfo->prime_regex = g_regex_new(" *([^ \\|]+) *(?:(?:\\|\\|)|(?:or))? *",
cinfo->prime_regex = g_regex_new(COL_CUSTOM_PRIME_REGEX,
G_REGEX_ANCHORED, G_REGEX_MATCH_ANCHORED, NULL);
}

View File

@ -28,6 +28,7 @@
#include <wsutil/filesystem.h>
#include <epan/prefs.h>
#include <epan/column-info.h>
#include "ui/filters.h"
#include "ui/simple_dialog.h"
@ -1349,7 +1350,7 @@ filter_te_syntax_check_cb(GtkWidget *w, gpointer user_data _U_)
gchar **fields;
guint i_field = 0;
fields = g_regex_split_simple(" *([^ \\|]+) *(?:(?:\\|\\|)|(?:or))? *",
fields = g_regex_split_simple(COL_CUSTOM_PRIME_REGEX,
strval, G_REGEX_ANCHORED, G_REGEX_MATCH_ANCHORED);
for (i_field =0; i_field < g_strv_length(fields); i_field += 1) {

View File

@ -26,6 +26,7 @@
#include <epan/prefs.h>
#include <epan/proto.h>
#include <epan/dfilter/dfilter.h>
#include <epan/column-info.h>
#include "syntax_line_edit.h"
@ -189,7 +190,7 @@ void SyntaxLineEdit::checkCustomColumn(QString fields)
return;
}
splitted_fields = g_regex_split_simple(" *([^ \\|]+) *(?:(?:\\|\\|)|(?:or))? *",
splitted_fields = g_regex_split_simple(COL_CUSTOM_PRIME_REGEX,
fields.toUtf8().constData(), G_REGEX_ANCHORED, G_REGEX_MATCH_ANCHORED);
for (i_field =0; i_field < g_strv_length(splitted_fields); i_field += 1) {