Find the word from a string.
3 views (last 30 days)
Show older comments
Balkar Singh
on 15 Apr 2020
Commented: Balkar Singh
on 21 Apr 2020
s1=hello everone (during the embedding process a watermark bit is embedded in the word)
s2=hello the everyone (By insertion attack 'the' word is inserted)
How can I find out that 'the' word is embedded during a attack and I also want to assign a 0 and 1 to the words. 0 indicates a new word and 1 presents a marked word.
Thanks in advance
4 Comments
Stephen23
on 15 Apr 2020
Edited: Stephen23
on 15 Apr 2020
Identifying character changes between two strings can be achieved using the Needleman-Wunsch algorithm:
You might find an implementation on FEX or online (but based on my experience implementing this algorithm in another language, it will be difficult to find a correct implentation).
If you want to resctrict yourself to matching whole words (so one different character means two words do not match), then you can simply split the strings up into words (e.g. strsplit, regexp), and then use ismember or something similar (one or two loops might be required).
Accepted Answer
Sahithi Kanumarlapudi
on 21 Apr 2020
Hi,
Using 'strcmp' you could get the indices of the words which are not matching as per your requirement stated in the question. For more information on how to compare strings using 'strcmp refer to the following links
https://www.mathworks.com/help/matlab/matlab_prog/string-comparisons.htmlhttps://www.mathworks.com/help/matlab/ref/strcmp.html
If there is any other requirement, you could post it in the comments.
Hope this helps!
More Answers (0)
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!