Further to Scrutinizer's points, you may want to simplify the regex. The backreference is not used, so the round brackets may be discarded. "\w" takes care of "a-zA-Z0-9_". The dot (".") loses its special meaning inside a character class. The dash ("-") need not be escaped inside the brackets, rather, putting it at the end is enough to avoid it from being expressed as a range character. And finally, add the "$" inside the character class if you want to match it.
How to emulate grep -o option in perl.
I mean to print not all line, only the exact match.
echo "2A2 BB" | perl -ne 'print if /2A2/'
2A2 BB
I want to print only 2A2. (2 Replies)
Hi
By using select clause I'm trying to pull out the rows to a variable.
If the variable has 0 row(s) selected then i'm printing some text message
else printing some other text message
if($xyz =~ m/0 row/)
{
print "0 rows ";
}
else
{
print " There are rows";
}
By my problem... (4 Replies)
I am trying to match a pattern exactly in a shell script. I have tried two methods
awk '/\<mpath${CURR_MP}\>/{print $1 $2}' multipath
perl -ne '/\bmpath${CURR_MP}\b/ and print' /var/tmp/multipath
Both these methods require that I use the escape character. I am guessing that is why... (8 Replies)
I have a file that contains the 2 following lines (from /proc/mounts)
/dev/sdc1 /mnt/backup2 xfs rw,relatime,attr2,noquota 0 0
/dev/sdb1 /mnt/backup xfs rw,relatime,attr2,noquota 0 0
I need to match the string in the second column exactly so that only one result is returned, e.g.
> grep... (2 Replies)
Hello,
My requirement is to iterate over all the lines of a file and compare them with a word and perform some operations if exact match is found.
For the snippet below, it works even if contents of line include "diff" and "diff:". I want it to work only if it is exactly "diff" and is not... (2 Replies)
i have a script in which i need to skip comments, and i am able to achieve it partially...
IN text file:
{****************************
{test : test...test }
Script:
while (<$fh>)
{
push ( @data, $_);
}
if ( $data =~ m/(^{\*+$)/ ){
}
With the above match i am... (5 Replies)
Hi,
I'm trying to match the front and back of a sequence. It works when there is an exact match (obviously), but I need the regex to be more flexible. When we get strings of nucleotides sometimes their prefixes and suffixes aren't exact matches. Sometimes there will be an extra letter and... (2 Replies)
Hi experts,
I have a file with regexes which is used for automatic searches on several files (40+ GB).
To do some postprocessing with the grep result I need the matching line as well as the match itself.
I know that the latter could be achieved with grep's -o option. But I'm not aware of a... (2 Replies)
Hi All,
We have this regex:\\*.*?(.600).*?.(LISTEN|ESTABLISHED)
OS = Solaris 10
The purpose of this regex is to match the ports in output of "netstat -an" and report if any ports between 6000-6009 are getting used. The only problem is if I have something like this (sample output as... (6 Replies)
I am trying to create a cronjob that will run on startup that will look at a list.txt file to see if there is a later version of a database using database.txt as the source. The matching lines are written to output.
$1 in database.txt will be in list.txt as a partial match. $2 of database.txt... (2 Replies)
Discussion started by: cmccabe
2 Replies
LEARN ABOUT CENTOS
mail::spamassassin::plugin::shortcircuit
Mail::SpamAssassin::Plugin::Shortcircuit(3) User Contributed Perl Documentation Mail::SpamAssassin::Plugin::Shortcircuit(3)NAME
Mail::SpamAssassin::Plugin::Shortcircuit - short-circuit evaluation for certain rules
SYNOPSIS
loadplugin Mail::SpamAssassin::Plugin::Shortcircuit
report Content analysis details: (_SCORE_ points, _REQD_ required, s/c _SCTYPE_)
add_header all Status "_YESNO_, score=_SCORE_ required=_REQD_ tests=_TESTS_ shortcircuit=_SCTYPE_ autolearn=_AUTOLEARN_ version=_VERSION_"
DESCRIPTION
This plugin implements simple, test-based shortcircuiting. Shortcircuiting a test will force all other pending rules to be skipped, if
that test is hit. In addition, a symbolic rule, "SHORTCIRCUIT", will fire.
Recomended usage is to use "priority" to set rules with strong S/O values (ie. 1.0) to be run first, and make instant spam or ham
classification based on that.
CONFIGURATION SETTINGS
The following configuration settings are used to control shortcircuiting:
shortcircuit SYMBOLIC_TEST_NAME {ham|spam|on|off}
Shortcircuiting a test will force all other pending rules to be skipped, if that test is hit.
Recomended usage is to use "priority" to set rules with strong S/O values (ie. 1.0) to be run first, and make instant spam or ham
classification based on that.
To override a test that uses shortcircuiting, you can set the classification type to "off".
on Shortcircuits the rest of the tests, but does not make a strict classification of spam or ham. Rather, it uses the default score
for the rule being shortcircuited. This would allow you, for example, to define a rule such as
body TEST /test/
describe TEST test rule that scores barely over spam threshold
score TEST 5.5
priority TEST -100
shortcircuit TEST on
The result of a message hitting the above rule would be a final score of 5.5, as opposed to 100 (default) if it were classified as
spam.
off Disables shortcircuiting on said rule.
spam
Shortcircuit the rule using a set of defaults; override the default score of this rule with the score from
"shortcircuit_spam_score", set the "noautolearn" tflag, and set priority to "-100". In other words, equivalent to:
shortcircuit TEST on
priority TEST -100
score TEST 100
tflags TEST noautolearn
ham Shortcircuit the rule using a set of defaults; override the default score of this rule with the score from
"shortcircuit_ham_score", set the "noautolearn" and "nice" tflags, and set priority to "-100". In other words, equivalent to:
shortcircuit TEST on
priority TEST -100
score TEST -100
tflags TEST noautolearn nice
shortcircuit_spam_score n.nn (default: 100)
When shortcircuit is used on a rule, and the shortcircuit classification type is set to "spam", this value should be applied in place
of the default score for that rule.
shortcircuit_ham_score n.nn (default: -100)
When shortcircuit is used on a rule, and the shortcircuit classification type is set to "ham", this value should be applied in place of
the default score for that rule.
TAGS
The following tags are added to the set available for use in reports, headers etc.:
_SC_ shortcircuit status (classification and rule name)
_SCRULE_ rulename that caused the shortcircuit
_SCTYPE_ shortcircuit classification ("spam", "ham", "default", "none")
SEE ALSO
"http://issues.apache.org/SpamAssassin/show_bug.cgi?id=3109"
perl v5.16.3 2011-06-06 Mail::SpamAssassin::Plugin::Shortcircuit(3)