# Find and replace in-place in files on Linux

sed -i -- 's/PATTERN/REPLACEMENT/g' *

• The -i means "in-place"
• The -- tells sed that this is the end of the options. Otherwise, it might interpret hyphens in the script as options

# How to find a substring in C++

Say we have the following string:

std::string str = "The quick brown fox jumps over the lazy dog";


And we want to find "fox"

Here are three methods:

1. Use std::string::find()
2. Use boost::contains()
3. Use pystring::find()

## Method 1: Use std::string::find

bool found = str.find("fox") != str.npos;


This returns an iterator pointing at the beginning of the substring if found, or std::string::npos otherwise.

## Method 2: Use boost::contains

#include <boost/algorithm/string/predicate.hpp>
found = boost::contains(str, "fox");


This has the advantage of returning a boolean.

Reference: Function contains

## Method 3: Use pystring::find

#include <pystring.h>
found = pystring::find(str, "fox") != -1;


Reference: imageworks/pystring