As an example, here's DDL with data.
CREATE TABLE dbo.MyTable ( mystring VARCHAR(200) );
GO
INSERT dbo.MyTable
( mystring )
VALUES
( 'This is a 7' )
, ( 'There is a 7 in this string' )
, ( 'Why must 7 always be here' )
, ( 'No 7s here. JK' )
, ( 'My 7s here' )
, ( 'An 7s here.' )
, ( 'On 7s here.' );
GO
SELECT
'SetPosition' = SUBSTRING(mystring, 4, 1)
, 'FindThe7' = SUBSTRING(mystring, CHARINDEX('7', mystring), 1)
FROM
dbo.MyTable AS mt;
DROP TABLE dbo.MyTable;
Note that in the first 3 rows, the 7 varies by position. The next 4 are fixed, so the first column in my result set works for only the 4 rows that have a fixed position. The second column finds the pattern no matter where it is.