August 2019
Intermediate to advanced
486 pages
13h 52m
English
In Solidity, there is no native function to compare the strings. Hence, it is not possible to compare the equality of the two strings. There are ways to do this by checking byte-by-byte data, but it would be a costly operation in terms of gas consumption. Solidity is not ideal for this, so you should think carefully when using this.
To check for string equality, we can generate the keccak256 hash of both strings and compare the hashes with each other. The generated hash of the two same strings will always give the same hash value. If the strings are not equal, their hashes will also differ.
The following code should be used to compare two strings for their equality:
function compare(string memory a, string ...