Core Function BinaryReplace

From Sputnik Wiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "<pre> BinaryReplace( <binary-array>, <needle>, <replacement> ) </pre> === Description === Search for a byte or string of bytes in a binary variable and replace it. === Paramet...")
 
(Example)
Line 75: Line 75:
 
// Print changed
 
// Print changed
 
say $subject; // Hello Spuntik!!!
 
say $subject; // Hello Spuntik!!!
 +
</syntaxhighlight>
 +
 +
Of course it will replace all it finds
 +
 +
<syntaxhighlight lang="sputnik">
 +
// Assign a value to do the replace on
 +
$subject = Pack("A*", "Hello world ok world hehe world!!!");
 +
// Assign a value to find
 +
$find = Pack("A*", "world");
 +
// Assign a value to replace the found with
 +
$replace = Pack("A*", "Spuntik");
 +
 +
// Print unchanged
 +
say $subject; // Hello world ok world hehe world!!!
 +
 +
// Do the replacement
 +
BinaryReplace($subject, $find, $replace);
 +
 +
// Print changed
 +
say $subject; // Hello Spuntik ok Spuntik hehe Spuntik!!!
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
[[Category:Core Function]]
 
[[Category:Core Function]]

Revision as of 06:51, 11 August 2014

BinaryReplace( <binary-array>, <needle>, <replacement> )

Contents

Description

Search for a byte or string of bytes in a binary variable and replace it.

Parameters

binary-array

The binary variable to do the replacement on.

needle

The needle to find.

(It will be cast as binary if it isn't already)

replacement

The replacement to use.

(It will be cast as binary if it isn't already)

Return Value

Success: Returns true.

Failure: Returns false.

Remarks

None.

Example

Simple replacement

// Assign a value to do the replace on
$subject = Pack("A*", "Hello world!!!");
// Assign a value to find
$find = Pack("A*", "world");
// Assign a value to replace the found with
$replace = Pack("A*", "cat");
 
// Print unchanged
say $subject; // Hello world!!!
 
// Do the replacement
BinaryReplace($subject, $find, $replace);
 
// Print changed
say $subject; // Hello cat!!!

This time the replacement is bigger than what is being replaced

// Assign a value to do the replace on
$subject = Pack("A*", "Hello world!!!");
// Assign a value to find
$find = Pack("A*", "world");
// Assign a value to replace the found with
$replace = Pack("A*", "Spuntik");
 
// Print unchanged
say $subject; // Hello world!!!
 
// Do the replacement
BinaryReplace($subject, $find, $replace);
 
// Print changed
say $subject; // Hello Spuntik!!!

Of course it will replace all it finds

// Assign a value to do the replace on
$subject = Pack("A*", "Hello world ok world hehe world!!!");
// Assign a value to find
$find = Pack("A*", "world");
// Assign a value to replace the found with
$replace = Pack("A*", "Spuntik");
 
// Print unchanged
say $subject; // Hello world ok world hehe world!!!
 
// Do the replacement
BinaryReplace($subject, $find, $replace);
 
// Print changed
say $subject; // Hello Spuntik ok Spuntik hehe Spuntik!!!
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox