String matching: Difference between revisions
m wiki trickery |
No edit summary |
||
Line 33: | Line 33: | ||
<lang python> |
<lang python> |
||
"abcd".startswith("ab")#returns true |
"abcd".startswith("ab") #returns true |
||
"abcd".endswith("zn")#returns false |
"abcd".endswith("zn") #returns false |
||
"bb" in "abab" #returns false |
|||
"ab" in "abab" #returns true |
|||
loc="abab".find(" |
loc = "abab".find("bb") #returns -1 |
||
loc = "abab".find("ab") #returns 0 |
|||
loc = "abab".find("ab",loc+1) #returns 2 |
|||
</lang> |
</lang> |
Revision as of 05:21, 15 October 2010
You are encouraged to solve this task according to the task description, using any language you may know.
Given two strings, demonstrate the following 3 types of matchings:
- Determining if the first string starts with second string
- Determining if the first string contains the second string at any location
- Determining if the first string ends with the second string
Optional requirements: A) Print the location of the match for part 2 B) Handle multiple occurrences of a string for part 2.
C++
<lang cpp>
- include <string>
using namespace std;
string s1="abcd"; string s2="abab"; string s3="ab"; //Beginning s1.compare(0,s3.size(),s3)!=0; //End s1.compare(s1.size()-s3.size(),s3.size(),s3)!=0; //Anywhere s1.find(s2)//returns string::npos int loc=s2.find(s3)//returns 0 loc=s2.find(s3,loc+1)//returns 2 </lang>
Python
<lang python> "abcd".startswith("ab") #returns true "abcd".endswith("zn") #returns false "bb" in "abab" #returns false "ab" in "abab" #returns true loc = "abab".find("bb") #returns -1 loc = "abab".find("ab") #returns 0 loc = "abab".find("ab",loc+1) #returns 2 </lang>