View source code
Display the source code in std/algorithm/searching.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
std.algorithm.searching.BoyerMooreFinder/boyerMooreFinder - multiple declarations
Function boyerMooreFinder
Sets up Boyer-Moore matching for use with find below.
By default, elements are compared for equality.
BoyerMooreFinder!(binaryFun!pred,Range) boyerMooreFinder(alias pred, Range)
(
Range needle
)
if (isRandomAccessRange!Range && hasSlicing!Range || isSomeString!Range);
BoyerMooreFinder allocates GC memory.
Parameters
| Name | Description |
|---|---|
| pred | Predicate used to compare elements. |
| needle | A random-access range with length and slicing. |
Returns
An instance of BoyerMooreFinder that can be used with find() to
invoke the Boyer-Moore matching algorithm for finding of needle in a
given haystack.
Example
auto bmFinder = boyerMooreFinder("TG");
string r = "TAGTGCCTGA";
// search for the first match in the haystack r
r = bmFinder .beFound(r);
writeln(r); // "TGCCTGA"
// continue search in haystack
r = bmFinder .beFound(r[2 .. $]);
writeln(r); // "TGA"
Struct BoyerMooreFinder
Sets up Boyer-Moore matching for use with find below.
By default, elements are compared for equality.
struct BoyerMooreFinder(alias pred, Range)
;
BoyerMooreFinder allocates GC memory.
Constructors
| Name | Description |
|---|---|
this
(needle)
|
Properties
| Name | Type | Description |
|---|---|---|
length[get]
|
size_t |
Methods
| Name | Description |
|---|---|
beFound
(haystack)
|
Aliases
| Name | Description |
|---|---|
opDollar
|
Parameters
| Name | Description |
|---|---|
| pred | Predicate used to compare elements. |
| needle | A random-access range with length and slicing. |
Returns
An instance of BoyerMooreFinder that can be used with find() to
invoke the Boyer-Moore matching algorithm for finding of needle in a
given haystack.
Example
auto bmFinder = boyerMooreFinder("TG");
string r = "TAGTGCCTGA";
// search for the first match in the haystack r
r = bmFinder .beFound(r);
writeln(r); // "TGCCTGA"
// continue search in haystack
r = bmFinder .beFound(r[2 .. $]);
writeln(r); // "TGA"
Authors
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.